Merge "Adding prebuilts for guava-33.2.1-jre." into androidx-main
diff --git a/com/google/guava/guava-parent/33.2.1-jre/LICENSE b/com/google/guava/guava-parent/33.2.1-jre/LICENSE
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/LICENSE
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   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.
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom
new file mode 100644
index 0000000..6a47e79
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom
@@ -0,0 +1,482 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>com.google.guava</groupId>
+  <artifactId>guava-parent</artifactId>
+  <version>33.2.1-jre</version>
+  <packaging>pom</packaging>
+  <name>Guava Maven Parent</name>
+  <description>Parent for guava artifacts</description>
+  <url>https://github.com/google/guava</url>
+  <properties>
+    <!-- Override this with -Dtest.include="**/SomeTest.java" on the CLI -->
+    <test.include>%regex[.*.class]</test.include>
+    <truth.version>1.4.2</truth.version>
+    <jsr305.version>3.0.2</jsr305.version>
+    <checker.version>3.42.0</checker.version>
+    <errorprone.version>2.26.1</errorprone.version>
+    <j2objc.version>3.0.0</j2objc.version>
+    <javac.version>9+181-r4173-1</javac.version>
+    <!-- Empty for all JDKs but 9-12 -->
+    <maven-javadoc-plugin.additionalJOptions></maven-javadoc-plugin.additionalJOptions>
+    <project.build.outputTimestamp>2024-05-31T17:44:36Z</project.build.outputTimestamp>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <test.add.opens></test.add.opens>
+    <test.add.args></test.add.args>
+    <module.status>release</module.status>
+    <variant.jvmEnvironment>standard-jvm</variant.jvmEnvironment>
+    <variant.jvmEnvironmentVariantName>jre</variant.jvmEnvironmentVariantName>
+    <otherVariant.version>33.2.1-android</otherVariant.version>
+    <otherVariant.jvmEnvironment>android</otherVariant.jvmEnvironment>
+    <otherVariant.jvmEnvironmentVariantName>android</otherVariant.jvmEnvironmentVariantName>
+  </properties>
+  <issueManagement>
+    <system>GitHub Issues</system>
+    <url>https://github.com/google/guava/issues</url>
+  </issueManagement>
+  <inceptionYear>2010</inceptionYear>
+  <licenses>
+    <license>
+      <name>Apache License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
+  <scm>
+    <connection>scm:git:https://github.com/google/guava.git</connection>
+    <developerConnection>scm:git:git@github.com:google/guava.git</developerConnection>
+    <url>https://github.com/google/guava</url>
+  </scm>
+  <developers>
+    <developer>
+      <id>kevinb9n</id>
+      <name>Kevin Bourrillion</name>
+      <email>kevinb@google.com</email>
+      <organization>Google</organization>
+      <organizationUrl>http://www.google.com</organizationUrl>
+      <roles>
+        <role>owner</role>
+        <role>developer</role>
+      </roles>
+      <timezone>-8</timezone>
+    </developer>
+  </developers>
+  <ciManagement>
+    <system>GitHub Actions</system>
+    <url>https://github.com/google/guava/actions</url>
+  </ciManagement>
+  <modules>
+    <module>guava</module>
+    <module>guava-bom</module>
+    <module>guava-gwt</module>
+    <module>guava-testlib</module>
+    <module>guava-tests</module>
+  </modules>
+  <build>
+    <!-- Handle where Guava deviates from Maven defaults -->
+    <sourceDirectory>src</sourceDirectory>
+    <testSourceDirectory>test</testSourceDirectory>
+    <resources>
+      <resource>
+        <directory>..</directory>
+        <includes>
+          <include>LICENSE</include>
+        </includes>
+        <targetPath>META-INF</targetPath>
+      </resource>
+    </resources>
+    <testResources>
+      <testResource>
+        <directory>test</directory>
+        <excludes>
+          <exclude>**/*.java</exclude>
+        </excludes>
+      </testResource>
+    </testResources>
+    <plugins>
+      <plugin>
+        <artifactId>maven-enforcer-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>enforce-versions</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <requireMavenVersion>
+                  <version>3.0.5</version>
+                </requireMavenVersion>
+                <requireJavaVersion>
+                  <version>1.8.0</version>
+                </requireJavaVersion>
+              </rules>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <version>3.8.1</version>
+          <configuration>
+            <source>1.8</source>
+            <target>1.8</target>
+            <encoding>UTF-8</encoding>
+            <parameters>true</parameters>
+            <compilerArgs>
+              <!--
+                   Make includes/excludes fully work:
+                   https://issues.apache.org/jira/browse/MCOMPILER-174
+
+                   (Compare what guava-gwt has to do for maven-javadoc-plugin.)
+              -->
+              <arg>-sourcepath</arg>
+              <arg>doesnotexist</arg>
+              <!-- https://errorprone.info/docs/installation#maven -->
+              <arg>-XDcompilePolicy=simple</arg>
+              <!-- -Xplugin:ErrorProne is set conditionally by a profile. -->
+            </compilerArgs>
+            <annotationProcessorPaths>
+              <path>
+                <groupId>com.google.errorprone</groupId>
+                <artifactId>error_prone_core</artifactId>
+                <version>2.23.0</version>
+              </path>
+            </annotationProcessorPaths>
+            <!-- Fork:
+
+                 - for JDK8 because we use a javac9 bootclasspath
+
+                 - for JDK9+ because we need args like add-exports
+                 -->
+            <fork>true</fork>
+          </configuration>
+        </plugin>
+        <plugin>
+          <artifactId>maven-jar-plugin</artifactId>
+          <version>3.2.0</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-source-plugin</artifactId>
+          <version>3.3.0</version>
+          <executions>
+            <execution>
+              <id>attach-sources</id>
+              <goals>
+                <goal>jar-no-fork</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>animal-sniffer-maven-plugin</artifactId>
+          <version>1.23</version>
+          <dependencies>
+            <dependency>
+              <groupId>org.ow2.asm</groupId>
+              <artifactId>asm</artifactId>
+              <version>9.6</version>
+            </dependency>
+          </dependencies>
+          <configuration>
+            <annotations>com.google.common.base.IgnoreJRERequirement,com.google.common.collect.IgnoreJRERequirement,com.google.common.hash.IgnoreJRERequirement,com.google.common.io.IgnoreJRERequirement,com.google.common.reflect.IgnoreJRERequirement,com.google.common.testing.IgnoreJRERequirement</annotations>
+            <checkTestClasses>true</checkTestClasses>
+            <signature>
+              <groupId>org.codehaus.mojo.signature</groupId>
+              <artifactId>java18</artifactId>
+              <version>1.0</version>
+            </signature>
+          </configuration>
+          <executions>
+            <execution>
+              <id>check-java-version-compatibility</id>
+              <phase>test</phase>
+              <goals>
+                <goal>check</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <artifactId>maven-javadoc-plugin</artifactId>
+          <version>3.5.0</version>
+          <configuration>
+            <quiet>true</quiet>
+            <notimestamp>true</notimestamp>
+            <encoding>UTF-8</encoding>
+            <docencoding>UTF-8</docencoding>
+            <charset>UTF-8</charset>
+            <additionalOptions>
+              <additionalOption>-XDignore.symbol.file</additionalOption>
+              <additionalOption>-Xdoclint:-html</additionalOption>
+            </additionalOptions>
+            <linksource>true</linksource>
+            <source>${java.specification.version}</source>
+            <additionalJOption>${maven-javadoc-plugin.additionalJOptions}</additionalJOption>
+          </configuration>
+          <executions>
+            <execution>
+              <id>attach-docs</id>
+              <goals><goal>jar</goal></goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <version>3.1.1</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-antrun-plugin</artifactId>
+          <version>1.6</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>2.7.2</version>
+          <configuration>
+            <includes>
+              <include>${test.include}</include>
+            </includes>
+            <!-- By having our own entries here, we also override the default exclusion filter, which excludes all nested classes. -->
+            <excludes>
+              <!-- https://github.com/google/guava/issues/2840 -->
+              <exclude>%regex[.*PackageSanityTests.*.class]</exclude>
+              <!-- FeatureUtilTest.*ExampleDerivedInterfaceTester, com.google.common.io.*Tester, incidentally FeatureSpecificTestSuiteBuilderTest.MyAbstractTester (but we don't care either way because it's not meant to run on its own but works OK if it does)... but not NullPointerTesterTest, etc. -->
+              <exclude>%regex[.*Tester.class]</exclude>
+              <!-- Anonymous TestCase subclasses in GeneratedMonitorTest -->
+              <exclude>%regex[.*[$]\d+.class]</exclude>
+            </excludes>
+            <redirectTestOutputToFile>true</redirectTestOutputToFile>
+            <runOrder>alphabetical</runOrder>
+            <!-- Set max heap for tests. -->
+            <!-- Catch dependencies on the default locale by setting it to hi-IN. -->
+            <argLine>-Xmx1536M -Duser.language=hi -Duser.country=IN ${test.add.args} ${test.add.opens}</argLine>
+          </configuration>
+        </plugin>
+        <plugin>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>3.0.0-M3</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>3.3.1</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>build-helper-maven-plugin</artifactId>
+          <version>3.4.0</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+  <distributionManagement>
+    <snapshotRepository>
+      <id>sonatype-nexus-snapshots</id>
+      <name>Sonatype Nexus Snapshots</name>
+      <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
+    </snapshotRepository>
+    <repository>
+      <id>sonatype-nexus-staging</id>
+      <name>Nexus Release Repository</name>
+      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
+    </repository>
+    <site>
+      <id>guava-site</id>
+      <name>Guava Documentation Site</name>
+      <url>scp://dummy.server/dontinstall/usestaging</url>
+    </site>
+  </distributionManagement>
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>com.google.code.findbugs</groupId>
+        <artifactId>jsr305</artifactId>
+        <version>${jsr305.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.checkerframework</groupId>
+        <artifactId>checker-qual</artifactId>
+        <version>${checker.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.errorprone</groupId>
+        <artifactId>error_prone_annotations</artifactId>
+        <version>${errorprone.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.google.j2objc</groupId>
+        <artifactId>j2objc-annotations</artifactId>
+        <version>${j2objc.version}</version>
+      </dependency>
+      <!--
+      We moved away from using dependencyManagement for test-only deps because of https://github.com/google/guava/issues/6654.
+      We could probably have resumed it after https://github.com/google/guava/pull/6664.
+      But it's always weird that published poms reference test-only libraries at all, so I'm not in any rush to do so.
+      -->
+    </dependencies>
+  </dependencyManagement>
+  <profiles>
+    <profile>
+        <id>sonatype-oss-release</id>
+        <build>
+          <plugins>
+            <plugin>
+              <artifactId>maven-gpg-plugin</artifactId>
+              <version>3.0.1</version>
+              <executions>
+                <execution>
+                  <id>sign-artifacts</id>
+                  <phase>verify</phase>
+                  <goals>
+                    <goal>sign</goal>
+                  </goals>
+                </execution>
+              </executions>
+            </plugin>
+          </plugins>
+      </build>
+    </profile>
+    <profile>
+      <!--
+          Passes JDK 11-12-specific `no-module-directories` flag to Javadoc tool,
+          which is required to make symbol search work correctly in the generated
+          pages.
+
+          This flag does not exist on 9-10 and 13+ (https://bugs.openjdk.java.net/browse/JDK-8215582).
+
+          Consider removing it once our release and test scripts are migrated to a recent JDK (17+).
+       -->
+      <id>javadocs-jdk11-12</id>
+      <activation>
+        <jdk>[11,13)</jdk>
+      </activation>
+      <properties>
+        <maven-javadoc-plugin.additionalJOptions>--no-module-directories</maven-javadoc-plugin.additionalJOptions>
+      </properties>
+    </profile>
+    <profile>
+      <id>open-jre-modules</id>
+      <activation>
+        <jdk>[9,]</jdk>
+      </activation>
+      <properties>
+        <!--
+            Some tests need reflective access to the internals of these packages. It is only the
+            tests themselves and not the code being tested that needs that access, though there's no
+            obvious way to ensure that.
+
+            We could consider arranging things so that only the tests we know need this would get
+            the add-opens. Right now that doesn't seem worth the effort, though.
+        -->
+        <test.add.opens>
+          --add-opens java.base/java.lang=ALL-UNNAMED
+          --add-opens java.base/java.util=ALL-UNNAMED
+          --add-opens java.base/sun.security.jca=ALL-UNNAMED
+        </test.add.opens>
+      </properties>
+    </profile>
+    <profile>
+      <id>javac9-for-jdk8</id>
+      <activation>
+        <jdk>1.8</jdk>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-compiler-plugin</artifactId>
+            <configuration>
+              <!-- Under JDK8, we continue to use errorprone's javac9 (even
+                   though we don't run Error Prone itself, which no longer
+                   supports JDK8!).
+
+                   Why? At some point, presumably after
+                   https://github.com/google/guava/commit/e06a8cec65815599e510d7f9c1ea9d2a8eaa438a,
+                   builds with JDK8 began failing animal-sniffer with the error:
+
+                   Failed to check signatures: Bad class file .../CollectionFuture$ListFuture.class
+
+                   One way of dealing with that would be to disable
+                   animal-sniffer. And that would be fine for our -jre builds:
+                   If we're building with JDK8, then clearly we're sticking to
+                   JDK8 APIs. However, I assume (but did not confirm) that we'd
+                   have the same issue with our -android builds, which need
+                   animal-sniffer so that they can check that we're sticking to
+                   JDK6-like APIs.
+
+                   So instead, we use javac9, which doesn't lead to this error.
+              -->
+              <compilerArgs combine.children="append">
+                <arg>-J-Xbootclasspath/p:${settings.localRepository}/com/google/errorprone/javac/${javac.version}/javac-${javac.version}.jar</arg>
+              </compilerArgs>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>run-error-prone</id>
+      <activation>
+        <!--
+        Error Prone requires 11+: https://errorprone.info/docs/installation
+        We skip 12-15 because of https://github.com/google/error-prone/issues/3540.
+        -->
+        <jdk>[11,12),[16,)</jdk>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-compiler-plugin</artifactId>
+            <configuration>
+              <compilerArgs combine.children="append">
+                <!-- https://errorprone.info/docs/installation#maven -->
+                <!-- TODO(cpovirk): Enable NullArgumentForNonNullParameter for
+                     prod code. It's disabled automatically for "test code"
+                     (which is good: our tests have intentional violations), but
+                     Error Prone doesn't know it's building test code unless we
+                     pass -XepCompilingTestOnlyCode, and that argument needs to
+                     be passed as part of the same <arg> as -Xplugin:ErrorProne,
+                     and I gave up trying to figure out how to do that for test
+                     compilation only. -->
+                <arg>-Xplugin:ErrorProne -Xep:NullArgumentForNonNullParameter:OFF -Xep:Java8ApiChecker:ERROR</arg>
+                <!-- https://github.com/google/error-prone/blob/f8e33bc460be82ab22256a7ef8b979d7a2cacaba/docs/installation.md#jdk-16 -->
+                <!-- TODO(cpovirk): Use .mvn/jvm.config instead (per
+                     https://errorprone.info/docs/installation#maven) if it can
+                     be made not to interfere with JDK8 or if we stop building
+                     with JDK8. -->
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg>
+                <arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
+                <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
+                <arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg>
+              </compilerArgs>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>javac-for-jvm18plus</id>
+      <activation>
+        <!--
+            In order to build and run the tests against JDK 18+, we need to pass java.security.manager=allow, to make
+            the deprecated 'java.lang.SecurityManager' available for use.
+         -->
+        <jdk>[18,]</jdk>
+      </activation>
+      <properties>
+        <test.add.args>-Djava.security.manager=allow</test.add.args>
+      </properties>
+    </profile>
+  </profiles>
+</project>
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc
new file mode 100644
index 0000000..84df660
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEQgACgkQ9tSh1BHp
+0a4MCgf/VApDWbeZHFbW0/GM3rJggNppTGM5G6nw7kIxki4h9F6+QroewDtrn6Do
+UQIU/LuwuBkbWfUz4G/eHUKAAayCerPa0/ckyeLlWjhhX0c0oIWCpIPLIPYL/t+w
+RivimErT4aUpMO7+S1vtMPzqjWmzuCa+c7rHXZNbwq7nztuwr74C+GZozx6I3/zl
+8Gg8N2cpYCwiEWrzNmVQWRSVPA7aSm43Bou8aBYY64z+rFG1Hpz5Md3E50y22PZX
+cVNfba/HnJG0UOGMmbo11gbqpLXYb4Cia4Ld1IcLuzojA6ZWH/5rCEd8tCHxt5fq
+2pGfcyLvbOK80yXB1FOIv/kRzuCxjg==
+=hUOf
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.md5 b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.md5
new file mode 100644
index 0000000..16fd289
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.md5
@@ -0,0 +1 @@
+0926353a7ff71b7ab1bf1fa27d24e34b
\ No newline at end of file
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.sha1 b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.sha1
new file mode 100644
index 0000000..d64b6e6
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.asc.sha1
@@ -0,0 +1 @@
+e1b3a9305531076713e5f027a525544a9df113cf
\ No newline at end of file
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.md5 b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.md5
new file mode 100644
index 0000000..b841843
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.md5
@@ -0,0 +1 @@
+f18009cd24164bf9615db6dc4399580d
\ No newline at end of file
diff --git a/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.sha1 b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.sha1
new file mode 100644
index 0000000..b58d03d
--- /dev/null
+++ b/com/google/guava/guava-parent/33.2.1-jre/guava-parent-33.2.1-jre.pom.sha1
@@ -0,0 +1 @@
+fc55955fab23e86fad230acc81bf570deb5660bd
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar
new file mode 100644
index 0000000..a0dd1df
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar
Binary files differ
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc
new file mode 100644
index 0000000..3c412ff
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEnQACgkQ9tSh1BHp
+0a5gsgf+Mt6AgiBcAVq3wPu9ztFoZ0M2vxt6wY0kEyCc7hHmMX5DHOxc739V+h0M
+Jsig36K2Q7vUayZ6Nb/W7IP93GCJ9u9LRS+A9ZvGXDcxl3+CxqkH1/MLSAdLzaHe
+8DpkQ363HcUbsX0oL0gfgi0qkiTMlczjepZz1iYJ8/A4U4Ytqxsolv4rvzMzJOd+
+rIwqTRhKVdrrcG16Nrm9dTZ6d0d40tr72aCTppkzUYO1oXNdWLxf+eFg+3Z0coLf
+3uhGAFh5gEHapC5d4x6fmoBq9pHlu5Ssd2muU/PVyL2PWg2laIxurEWwllJ4mtYE
+dRS+55gTdvZx4lFezv5eNwr437/4iw==
+=4/Kk
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.md5
new file mode 100644
index 0000000..22cb7e5
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.md5
@@ -0,0 +1 @@
+684a2dd5289c750e39f40d90d0ce9d13
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.sha1
new file mode 100644
index 0000000..71b626e
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.asc.sha1
@@ -0,0 +1 @@
+a2397511c61912ab4b3e775e5e29562a2f331d76
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.md5
new file mode 100644
index 0000000..f48407f
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.md5
@@ -0,0 +1 @@
+db420f230477fb9b6c711087b4609644
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.sha1
new file mode 100644
index 0000000..d736e44
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre-sources.jar.sha1
@@ -0,0 +1 @@
+bc9158b960b71bae613703973ef8162a2258089f
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar
new file mode 100644
index 0000000..4c7fc4c
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar
Binary files differ
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc
new file mode 100644
index 0000000..ecba346
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEnMACgkQ9tSh1BHp
+0a6bnAf/SRra4pvp0OBAdrJy/BtvfQEfry4/8oO4AhRXsM55ioyM8RmIMkUB4Dif
+OaN9jzaVsU5Sb0uxsZ2rzRfHynRtikTFTnBVYSON4+nB+s4Iyc5+ou0BtRvr7xN+
+8aCMpWLQBom9Qlp/Pp5x8RTDosV25hbM0xuOYyb1NDTwmIfKXNoubbATtGrXTVT5
+jG0hf8+8F7iyti2vUreJS5U8ERIHF3iKb0QfK1NI2J854OYrekG2qxh3qJQIT9KM
+zImpjrfIiIIbJy2FVlTRdaNqH/foBReihHEp/w5BEYym5VXFgUaDoozUqO+cdEqS
+MSagpC8gLmVdUrkhIzgn2mLTRyqnmg==
+=KtT0
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.md5
new file mode 100644
index 0000000..138fe23
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.md5
@@ -0,0 +1 @@
+0808da751825890193ed340e192f473a
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.sha1
new file mode 100644
index 0000000..1815d48
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.asc.sha1
@@ -0,0 +1 @@
+867a62896c9d33532c1be034df8052e628640e84
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.md5
new file mode 100644
index 0000000..811b835
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.md5
@@ -0,0 +1 @@
+8b24e458dd5880617dfc126e1c906e38
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.sha1
new file mode 100644
index 0000000..71e9072
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.jar.sha1
@@ -0,0 +1 @@
+ba7d569795211c283c4576d17528534a618a5d59
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom
new file mode 100644
index 0000000..db80156
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>com.google.guava</groupId>
+    <artifactId>guava-parent</artifactId>
+    <version>33.2.1-jre</version>
+  </parent>
+  <artifactId>guava-testlib</artifactId>
+  <name>Guava Testing Library</name>
+  <description>
+    Guava testlib is a set of java classes used for more convenient
+    unit testing - particularly to assist the tests for Guava itself.
+  </description>
+  <dependencies>
+    <dependency>
+      <groupId>com.google.code.findbugs</groupId>
+      <artifactId>jsr305</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.checkerframework</groupId>
+      <artifactId>checker-qual</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.google.errorprone</groupId>
+      <artifactId>error_prone_annotations</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.google.j2objc</groupId>
+      <artifactId>j2objc-annotations</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>guava</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <!-- *not* <scope>test</scope>; <scope>compile</scope> is right so that guava-testlib users get junit transitively. -->
+      <version>4.13.2</version>
+    </dependency>
+    <dependency>
+      <!--
+      Do not include Truth in non-test scope! Doing so creates a problematic dependency cycle.
+      -->
+      <groupId>com.google.truth</groupId>
+      <artifactId>truth</artifactId>
+      <version>${truth.version}</version>
+      <scope>test</scope>
+      <exclusions>
+        <exclusion>
+          <!-- use the guava we're building. -->
+          <groupId>com.google.guava</groupId>
+          <artifactId>guava</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-compiler-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <artifactId>maven-source-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-test-sources</id>
+            <phase>post-integration-test</phase>
+            <goals><goal>test-jar</goal></goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <artifactId>maven-jar-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>create-test-jar</id>
+            <goals><goal>test-jar</goal></goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>animal-sniffer-maven-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <artifactId>maven-javadoc-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc
new file mode 100644
index 0000000..83a3ecc
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEnQACgkQ9tSh1BHp
+0a70sgf/Qe5LRSTon2Mq/7i0ikdWwO7jkRplmL+2wpLpP3NLBu+Dnjo1RPjrf5MS
+rvlSI/6J5cK53cCrYOCcriFXQgB+Eu2/rHYMoIea/anf5TKCLtdVoviR6/cQmYeC
+vVLCtt2H3xsSi5xVJVqebLjDeLmSTary32stlJwnOiwsaui4Arf1ijY8CE5KlVXx
+qgsbK5WCRB1Hznf8EFxCX10BU5FzRB1PRLFTqOmudzBEldPykG2TkEG+/ueH6y8z
+9qdNfhP4905b5lZKgp8z4N/SyMq1QIE8vSknG33wTzYS97ArMIo8v6p26p50QRHY
+bqJeAgBbwKsddpaRF52rury8wA1Zdw==
+=fnZk
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.md5
new file mode 100644
index 0000000..2077dda
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.md5
@@ -0,0 +1 @@
+f0dd7eeb8365388f30ab06f71f5cc422
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.sha1
new file mode 100644
index 0000000..7d1e7e9
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.asc.sha1
@@ -0,0 +1 @@
+79218e7975db77323ee7f6a3ff943287cbc8fc02
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.md5 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.md5
new file mode 100644
index 0000000..869d9ae
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.md5
@@ -0,0 +1 @@
+a53ac1200ea39cfa4e72a9b77b8776ea
\ No newline at end of file
diff --git a/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.sha1 b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.sha1
new file mode 100644
index 0000000..3c3a868
--- /dev/null
+++ b/com/google/guava/guava-testlib/33.2.1-jre/guava-testlib-33.2.1-jre.pom.sha1
@@ -0,0 +1 @@
+3b95376190925f23c89d9f2f990f2eb0bab9d2b2
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar
new file mode 100644
index 0000000..7c64dae
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar
Binary files differ
diff --git a/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.md5 b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.md5
new file mode 100644
index 0000000..086b084
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.md5
@@ -0,0 +1 @@
+6c73caaf0c25d5058a99d78060c85c3c
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.sha1 b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.sha1
new file mode 100644
index 0000000..60e4d79
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-android/guava-33.2.1-android.jar.sha1
@@ -0,0 +1 @@
+e4b6190e40480888763b7ba80b4912a3eb03a3f4
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar
new file mode 100644
index 0000000..1194b09
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar
Binary files differ
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc
new file mode 100644
index 0000000..8a98081
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEbIACgkQ9tSh1BHp
+0a7SNwf+OaiAxz8+hZ/7+IdrA4/+8pXaqnAmY8/cRX2RdhH3y8SlONTtMMcSmy7u
+NIIHigKjD/Y3aiFRhFvZqhwV5T/TY0gFf+QnCmSyi7Rbt6wRYIlhCiWehjpMYvPI
+JrycTuwdPfVj5DCWnAKU0xRzEmJC9n4INCHlwlAFE/eIyvsei/ghe9+BCUlogcXq
+IlirKp9+bMx+evnHxZIhnwxNLF67AJ28m1D8lyzBWQPBcb38SR8pv4ByZ4Ul+TA4
+dEhmQZDwi5Ncft9WbF4XxePzb8YE0YZx9p12Uo1ohGTZQU9asYcJ29LcAUxOMjyR
+TNO3QQhTxrg/DvvNJt6T4aeCu3+nAA==
+=ieWn
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.md5
new file mode 100644
index 0000000..15614c8
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.md5
@@ -0,0 +1 @@
+ae5e4e2b9587f371b87e0f81a05758cd
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.sha1
new file mode 100644
index 0000000..defcf01
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.asc.sha1
@@ -0,0 +1 @@
+317939361ad4ba54ccd8c048f5575bb6fb33ec59
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.md5
new file mode 100644
index 0000000..e8611cb
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.md5
@@ -0,0 +1 @@
+0539732f90589e67cc30b83c85ffbb78
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.sha1
new file mode 100644
index 0000000..9b40c4b
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre-sources.jar.sha1
@@ -0,0 +1 @@
+b49b0b2d97a0eae57d70d6871d150f2940b933c8
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar
new file mode 100644
index 0000000..10d10b6
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar
Binary files differ
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc
new file mode 100644
index 0000000..08a3867
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEbIACgkQ9tSh1BHp
+0a4xAwgApHd80rXlC2XBQQqzwJFE4ewgiUfsCsSwEIvc/0YHbRgerX9xfApk7Zkd
+s38BxO1/b1qkOZkuC5s3ULx4Mp14ROJz9EoZJxtZIqpWHJ0/TwmJBHhcx2FJcvQ/
+wgqVaKszcpwkx5R8E0KIqw3L+Or8+QsXWjiCjqq5aDaAwiO5hqN9ejX0JoYTRgzH
++/XY3oPA2b3bjBjOOmVcQJaKs7QMiJiT1tgGEyoSuCxf8tG0xxmXanbSB8rWHtKT
+RqWnDTnMFNzzlWPTEObsvyiQ5mk1fwIGI4YWbWfH5v94H1PAZU5qsRLs9D1jIoj0
+1YE61OpM5ght6WjuOJYr8DMgpyh+7w==
+=e4Xr
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.md5
new file mode 100644
index 0000000..416c31f
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.md5
@@ -0,0 +1 @@
+107b25e8a2d4727d91ba97532349300a
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.sha1
new file mode 100644
index 0000000..163e313
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.asc.sha1
@@ -0,0 +1 @@
+a687a2955e8bf2b6f1914a32bdb537f88884a4f3
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.md5
new file mode 100644
index 0000000..5a8b91e
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.md5
@@ -0,0 +1 @@
+872309e5982530bdc7e68096c0d53cd2
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.sha1
new file mode 100644
index 0000000..27d5304
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.jar.sha1
@@ -0,0 +1 @@
+818e780da2c66c63bbb6480fef1f3855eeafa3e4
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module
new file mode 100644
index 0000000..7d344d3
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module
@@ -0,0 +1,297 @@
+{
+  "formatVersion": "1.1",
+  "component": {
+    "group": "com.google.guava",
+    "module": "guava",
+    "version": "33.2.1-jre",
+    "attributes": {
+      "org.gradle.status": "release"
+    }
+  },
+  "createdBy": {
+    "maven": {
+      "version": "3.9.6",
+      "buildId": "Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)"
+    }
+  },
+  "variants": [
+    {
+      "name": "jreApiElements",
+      "attributes": {
+        "org.gradle.category": "library",
+        "org.gradle.dependency.bundling": "external",
+        "org.gradle.jvm.version": "8",
+        "org.gradle.jvm.environment": "standard-jvm",
+        "org.gradle.libraryelements": "jar",
+        "org.gradle.usage": "java-api"
+      },
+      "dependencies": [
+        {
+          "group": "com.google.guava",
+          "module": "failureaccess",
+          "version": {
+            "requires": "1.0.2"
+          }
+        },
+        {
+          "group": "com.google.guava",
+          "module": "listenablefuture",
+          "version": {
+            "requires": "9999.0-empty-to-avoid-conflict-with-guava"
+          }
+        },
+        {
+          "group": "com.google.code.findbugs",
+          "module": "jsr305",
+          "version": {
+            "requires": "3.0.2"
+          }
+        },
+        {
+          "group": "org.checkerframework",
+          "module": "checker-qual",
+          "version": {
+            "requires": "3.42.0"
+          }
+        },
+        {
+          "group": "com.google.errorprone",
+          "module": "error_prone_annotations",
+          "version": {
+            "requires": "2.26.1"
+          }
+        },
+        {
+          "group": "com.google.j2objc",
+          "module": "j2objc-annotations",
+          "version": {
+            "requires": "3.0.0"
+          }
+        }
+      ],
+      "files": [
+        {
+          "name": "guava-33.2.1-jre.jar",
+          "url": "guava-33.2.1-jre.jar"
+        }
+      ],
+      "capabilities": [
+        {
+          "group": "com.google.guava",
+          "name": "guava",
+          "version": "33.2.1-jre"
+        },
+        {
+          "group": "com.google.collections",
+          "name": "google-collections",
+          "version": "33.2.1-jre"
+        }
+      ]
+    },
+    {
+      "name": "jreRuntimeElements",
+      "attributes": {
+        "org.gradle.category": "library",
+        "org.gradle.dependency.bundling": "external",
+        "org.gradle.jvm.version": "8",
+        "org.gradle.jvm.environment": "standard-jvm",
+        "org.gradle.libraryelements": "jar",
+        "org.gradle.usage": "java-runtime"
+      },
+      "dependencies": [
+        {
+          "group": "com.google.guava",
+          "module": "failureaccess",
+          "version": {
+            "requires": "1.0.2"
+          }
+        },
+        {
+          "group": "com.google.guava",
+          "module": "listenablefuture",
+          "version": {
+            "requires": "9999.0-empty-to-avoid-conflict-with-guava"
+          }
+        },
+        {
+          "group": "com.google.code.findbugs",
+          "module": "jsr305",
+          "version": {
+            "requires": "3.0.2"
+          }
+        },
+        {
+          "group": "org.checkerframework",
+          "module": "checker-qual",
+          "version": {
+            "requires": "3.42.0"
+          }
+        },
+        {
+          "group": "com.google.errorprone",
+          "module": "error_prone_annotations",
+          "version": {
+            "requires": "2.26.1"
+          }
+        }
+      ],
+      "files": [
+        {
+          "name": "guava-33.2.1-jre.jar",
+          "url": "guava-33.2.1-jre.jar"
+        }
+      ],
+      "capabilities": [
+        {
+          "group": "com.google.guava",
+          "name": "guava",
+          "version": "33.2.1-jre"
+        },
+        {
+          "group": "com.google.collections",
+          "name": "google-collections",
+          "version": "33.2.1-jre"
+        }
+      ]
+    },
+    {
+      "name": "androidApiElements",
+      "attributes": {
+        "org.gradle.category": "library",
+        "org.gradle.dependency.bundling": "external",
+        "org.gradle.jvm.version": "8",
+        "org.gradle.jvm.environment": "android",
+        "org.gradle.libraryelements": "jar",
+        "org.gradle.usage": "java-api"
+      },
+      "dependencies": [
+        {
+          "group": "com.google.guava",
+          "module": "failureaccess",
+          "version": {
+            "requires": "1.0.2"
+          }
+        },
+        {
+          "group": "com.google.guava",
+          "module": "listenablefuture",
+          "version": {
+            "requires": "9999.0-empty-to-avoid-conflict-with-guava"
+          }
+        },
+        {
+          "group": "com.google.code.findbugs",
+          "module": "jsr305",
+          "version": {
+            "requires": "3.0.2"
+          }
+        },
+        {
+          "group": "org.checkerframework",
+          "module": "checker-qual",
+          "version": {
+            "requires": "3.42.0"
+          }
+        },
+        {
+          "group": "com.google.errorprone",
+          "module": "error_prone_annotations",
+          "version": {
+            "requires": "2.26.1"
+          }
+        },
+        {
+          "group": "com.google.j2objc",
+          "module": "j2objc-annotations",
+          "version": {
+            "requires": "3.0.0"
+          }
+        }
+      ],
+      "files": [
+        {
+          "name": "guava-33.2.1-android.jar",
+          "url": "../33.2.1-android/guava-33.2.1-android.jar"
+        }
+      ],
+      "capabilities": [
+        {
+          "group": "com.google.guava",
+          "name": "guava",
+          "version": "33.2.1-jre"
+        },
+        {
+          "group": "com.google.collections",
+          "name": "google-collections",
+          "version": "33.2.1-jre"
+        }
+      ]
+    },
+    {
+      "name": "androidRuntimeElements",
+      "attributes": {
+        "org.gradle.category": "library",
+        "org.gradle.dependency.bundling": "external",
+        "org.gradle.jvm.version": "8",
+        "org.gradle.jvm.environment": "android",
+        "org.gradle.libraryelements": "jar",
+        "org.gradle.usage": "java-runtime"
+      },
+      "dependencies": [
+        {
+          "group": "com.google.guava",
+          "module": "failureaccess",
+          "version": {
+            "requires": "1.0.2"
+          }
+        },
+        {
+          "group": "com.google.guava",
+          "module": "listenablefuture",
+          "version": {
+            "requires": "9999.0-empty-to-avoid-conflict-with-guava"
+          }
+        },
+        {
+          "group": "com.google.code.findbugs",
+          "module": "jsr305",
+          "version": {
+            "requires": "3.0.2"
+          }
+        },
+        {
+          "group": "org.checkerframework",
+          "module": "checker-qual",
+          "version": {
+            "requires": "3.42.0"
+          }
+        },
+        {
+          "group": "com.google.errorprone",
+          "module": "error_prone_annotations",
+          "version": {
+            "requires": "2.26.1"
+          }
+        }
+      ],
+      "files": [
+        {
+          "name": "guava-33.2.1-android.jar",
+          "url": "../33.2.1-android/guava-33.2.1-android.jar"
+        }
+      ],
+      "capabilities": [
+        {
+          "group": "com.google.guava",
+          "name": "guava",
+          "version": "33.2.1-jre"
+        },
+        {
+          "group": "com.google.collections",
+          "name": "google-collections",
+          "version": "33.2.1-jre"
+        }
+      ]
+    }
+  ]
+}
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc
new file mode 100644
index 0000000..bace971
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEbIACgkQ9tSh1BHp
+0a6wTgf/ZtW5sjfP6YK6dypA3QyZMYVJn1G9j/+jD/WiU+uF3kJyjS3hMe1nu/K0
+vW2KBy7gLlPdJAl0MXsV8PLw0uYlBRseCAxyKevL2zTtBZBfDOk6ksdisLy0JFyc
+G0X4u+bL4t3MiPOyNM+9YOBYf6KDkB2vjth/T/wcdgZ+8skmZCEn9LOabIETARu/
+EZdeokyXTDka4XOFBpTMo4sokxBW/fSV+IBjJ2+xa91ic1hue6fs676CPhOoxaw9
+MOboMDQpsf+jROW0oqRlsJ3ElpqRP6vtgxrh0X96oKYWnyWgaV2eDBW+ksrnR/l8
+uCA+/v0PmNuOcOh534zd6HzKPcJ1jg==
+=zCz+
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.md5
new file mode 100644
index 0000000..9977407
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.md5
@@ -0,0 +1 @@
+42e09dfe434cee68c5375b89b5466eba
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.sha1
new file mode 100644
index 0000000..7d99a1b
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.asc.sha1
@@ -0,0 +1 @@
+42628b623c7361cb122bdce78f667cbcaae364fa
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.md5
new file mode 100644
index 0000000..dfed520
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.md5
@@ -0,0 +1 @@
+79112b2e812df3da5d150c44343716a6
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.sha1
new file mode 100644
index 0000000..2cd1474
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.module.sha1
@@ -0,0 +1 @@
+35b3a43a28bf269178f01d7097263d9ef95cac8b
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom
new file mode 100644
index 0000000..8760a3b
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <!-- do_not_remove: published-with-gradle-metadata -->
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>com.google.guava</groupId>
+    <artifactId>guava-parent</artifactId>
+    <version>33.2.1-jre</version>
+  </parent>
+  <artifactId>guava</artifactId>
+  <packaging>bundle</packaging>
+  <name>Guava: Google Core Libraries for Java</name>
+  <url>https://github.com/google/guava</url>
+  <description>
+    Guava is a suite of core and expanded libraries that include
+    utility classes, Google's collections, I/O classes, and
+    much more.
+  </description>
+  <dependencies>
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>failureaccess</artifactId>
+      <version>1.0.2</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>listenablefuture</artifactId>
+      <version>9999.0-empty-to-avoid-conflict-with-guava</version>
+    </dependency>
+    <dependency>
+      <groupId>com.google.code.findbugs</groupId>
+      <artifactId>jsr305</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.checkerframework</groupId>
+      <artifactId>checker-qual</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.google.errorprone</groupId>
+      <artifactId>error_prone_annotations</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>com.google.j2objc</groupId>
+      <artifactId>j2objc-annotations</artifactId>
+    </dependency>
+  </dependencies>
+  <build>
+    <resources>
+      <resource>
+        <directory>..</directory>
+        <includes>
+          <include>LICENSE</include> <!-- copied from the parent pom because I couldn't figure out a way to make combine.children="append" work -->
+          <include>proguard/*</include>
+        </includes>
+        <targetPath>META-INF</targetPath>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <artifactId>maven-jar-plugin</artifactId>
+        <configuration>
+          <archive>
+            <manifestEntries>
+              <Automatic-Module-Name>com.google.common</Automatic-Module-Name>
+            </manifestEntries>
+          </archive>
+        </configuration>
+      </plugin>
+      <plugin>
+        <extensions>true</extensions>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <version>5.1.8</version>
+        <executions>
+          <execution>
+            <id>bundle-manifest</id>
+            <phase>process-classes</phase>
+            <goals>
+              <goal>manifest</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <instructions>
+            <Export-Package>
+              !com.google.common.base.internal,
+              !com.google.common.util.concurrent.internal,
+              com.google.common.*
+            </Export-Package>
+            <Import-Package>
+              com.google.common.util.concurrent.internal,
+              javax.annotation;resolution:=optional,
+              javax.crypto.*;resolution:=optional,
+              sun.misc.*;resolution:=optional
+            </Import-Package>
+            <Bundle-DocURL>https://github.com/google/guava/</Bundle-DocURL>
+          </instructions>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-compiler-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <artifactId>maven-source-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>animal-sniffer-maven-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <configuration>
+          <!-- Passing `-subpackages com.google.common` breaks things, so we explicitly exclude everything else instead. -->
+          <!-- excludePackageNames requires specification of packages separately from "all subpackages".
+               https://issues.apache.org/jira/browse/MJAVADOC-584 -->
+          <excludePackageNames>
+            com.azul.tooling.in,com.google.common.base.internal,com.google.common.base.internal.*,com.google.thirdparty.publicsuffix,com.google.thirdparty.publicsuffix.*,com.oracle.*,com.sun.*,java.*,javax.*,jdk,jdk.*,org.*,sun.*
+          </excludePackageNames>
+          <!-- Ignore some tags that are found in Java 11 sources but not recognized... under -source 8, I think it was? I can no longer reproduce the failure. -->
+          <tags>
+            <tag>
+              <name>apiNote</name>
+              <placement>X</placement>
+            </tag>
+            <tag>
+              <name>implNote</name>
+              <placement>X</placement>
+            </tag>
+            <tag>
+              <name>implSpec</name>
+              <placement>X</placement>
+            </tag>
+            <tag>
+              <name>jls</name>
+              <placement>X</placement>
+            </tag>
+            <tag>
+              <name>revised</name>
+              <placement>X</placement>
+            </tag>
+            <tag>
+              <name>spec</name>
+              <placement>X</placement>
+            </tag>
+          </tags>
+
+          <!-- TODO(cpovirk): Move this to the parent after making the package-list files available there. -->
+          <!-- We add the link ourselves, both so that we can choose Java 9 over the version that -source suggests and so that we can solve the JSR305 problem described below. -->
+          <detectJavaApiLink>false</detectJavaApiLink>
+          <offlineLinks>
+            <!-- We need local copies of some of these for 2 reasons: a User-Agent problem (https://stackoverflow.com/a/47891403/28465) and an SSL problem (https://issues.apache.org/jira/browse/MJAVADOC-507). If we choose to work around the User-Agent problem, we can go back to <links>, sidestepping the SSL problem. -->
+            <!-- Even after we stop using JSR305 annotations in our own code, we'll want this link so that NullPointerTester's docs can link to @CheckForNull and friends... at least once we start using this config for guava-testlib. -->
+            <offlineLink>
+              <url>https://static.javadoc.io/com.google.code.findbugs/jsr305/3.0.1/</url>
+              <location>${project.basedir}/javadoc-link/jsr305</location>
+            </offlineLink>
+            <offlineLink>
+              <url>https://static.javadoc.io/com.google.j2objc/j2objc-annotations/1.1/</url>
+              <location>${project.basedir}/javadoc-link/j2objc-annotations</location>
+            </offlineLink>
+            <!-- The JDK doc must be listed after JSR305 (and as an <offlineLink>, not a <link>) so that JSR305 "claims" javax.annotation. -->
+            <offlineLink>
+              <url>https://docs.oracle.com/javase/9/docs/api/</url>
+              <location>https://docs.oracle.com/javase/9/docs/api/</location>
+            </offlineLink>
+            <!-- The Checker Framework likewise would claim javax.annotations, despite providing only a subset of the JSR305 annotations, so it must likewise come after JSR305. -->
+            <offlineLink>
+              <url>https://checkerframework.org/api/</url>
+              <location>${project.basedir}/javadoc-link/checker-framework</location>
+            </offlineLink>
+          </offlineLinks>
+          <links>
+            <link>https://errorprone.info/api/latest/</link>
+          </links>
+          <overview>../overview.html</overview>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-resources-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>gradle-module-metadata</id>
+            <phase>compile</phase>
+            <goals>
+              <goal>copy-resources</goal>
+            </goals>
+            <configuration>
+              <outputDirectory>target/publish</outputDirectory>
+              <resources>
+                <resource>
+                  <directory>.</directory>
+                  <includes>
+                    <include>module.json</include>
+                  </includes>
+                  <filtering>true</filtering>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-gradle-module-metadata</id>
+            <goals>
+              <goal>attach-artifact</goal>
+            </goals>
+            <configuration>
+              <artifacts>
+                <artifact>
+                  <file>target/publish/module.json</file>
+                  <type>module</type>
+                </artifact>
+              </artifacts>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc
new file mode 100644
index 0000000..9dda070
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEEvbX6T+cZ14f7PTGX9tSh1BHp0a4FAmZaEbIACgkQ9tSh1BHp
+0a6wMQf/ULcNUS/LG8l2iyjryBiXFdleSs4NgbRVdUre0xQ6FAa5mOQGtCv0Vxjb
+EhWHNlMJRDDRrMsvLuc116yTuXRp/pyjm6vAPSuav9TS+mIFAGoXGi90dKA+w7Iu
+xwGjYPXatfeyoZmc+1o4G/OpnD5+W1NnTMCaOp7jd9x4xopE1DApFnhYqpSZPC98
+k8Xx9A9pxDO6nqG38YSpDleFTmjuAwY1qIV1lEb3Aozs2xkEimGME7+aBDSSTOzp
+mMHZ7HG7lScT8gaw+NaQNdoJaUIWv9cG7tdCf6WB1CLpUAY7lFr5Wu2Aq4NqzLA6
+GealIGFt7LgBjh2rL8tKAXLytUJ3Vw==
+=tQzF
+-----END PGP SIGNATURE-----
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.md5
new file mode 100644
index 0000000..039e5ec
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.md5
@@ -0,0 +1 @@
+1b56a32ca9256e447230a92522f120f3
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.sha1
new file mode 100644
index 0000000..d3cc56b
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.asc.sha1
@@ -0,0 +1 @@
+4f5580ca902438fa230d6d499c99fa4efd2f2877
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.md5 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.md5
new file mode 100644
index 0000000..7600431
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.md5
@@ -0,0 +1 @@
+fdbe6eca1ed3faa436f22cc1428a4569
\ No newline at end of file
diff --git a/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.sha1 b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.sha1
new file mode 100644
index 0000000..8ab20ff
--- /dev/null
+++ b/com/google/guava/guava/33.2.1-jre/guava-33.2.1-jre.pom.sha1
@@ -0,0 +1 @@
+5f72123f1bb7d99af8b4a67745fb8309b73a6294
\ No newline at end of file