Diff of the two buildlogs:

--
--- b1/build.log	2025-02-26 02:45:02.040556656 +0000
+++ b2/build.log	2025-02-26 02:48:13.055961095 +0000
@@ -1,6 +1,6 @@
 I: pbuilder: network access will be disabled during build
-I: Current time: Tue Feb 25 14:42:26 -12 2025
-I: pbuilder-time-stamp: 1740537746
+I: Current time: Tue Mar 31 23:08:04 +14 2026
+I: pbuilder-time-stamp: 1774948084
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
 I: copying local configuration
@@ -28,51 +28,83 @@
 dpkg-source: info: applying JSONException.patch
 I: using fakeroot in build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/1602122/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/D01_modify_environment starting
+debug: Running on infom02-amd64.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Mar 31 09:08 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build/reproducible-path'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='amd64'
-  DEBIAN_FRONTEND='noninteractive'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
+  BASH_VERSION='5.2.37(1)-release'
+  BUILDDIR=/build/reproducible-path
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=amd64
+  DEBIAN_FRONTEND=noninteractive
   DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 '
-  DISTRIBUTION='unstable'
-  HOME='/root'
-  HOST_ARCH='amd64'
+  DIRSTACK=()
+  DISTRIBUTION=unstable
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=x86_64
+  HOST_ARCH=amd64
   IFS=' 	
   '
-  INVOCATION_ID='ac79b905b7a6482bab11993dba411807'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='1602122'
-  PS1='# '
-  PS2='> '
+  INVOCATION_ID=e4f88fdd5a9f4446b3dd4894a3c7cc6d
+  LANG=C
+  LANGUAGE=et_EE:et
+  LC_ALL=C
+  MACHTYPE=x86_64-pc-linux-gnu
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnu
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=91955
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.A7UvFqkG/pbuilderrc_uObW --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.A7UvFqkG/b1 --logfile b1/build.log triplea_1.9.0.0.7062-3.dsc'
-  SUDO_GID='109'
-  SUDO_UID='104'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.A7UvFqkG/pbuilderrc_cNAv --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.A7UvFqkG/b2 --logfile b2/build.log triplea_1.9.0.0.7062-3.dsc'
+  SUDO_GID=109
+  SUDO_UID=104
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
 I: uname -a
-  Linux infom01-amd64 6.1.0-31-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux
+  Linux i-capture-the-hostname 6.12.9+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.9-1~bpo12+1 (2025-01-19) x86_64 GNU/Linux
 I: ls -l /bin
-  lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin
-I: user script /srv/workspace/pbuilder/1602122/tmp/hooks/D02_print_environment finished
+  lrwxrwxrwx 1 root root 7 Nov 22  2024 /bin -> usr/bin
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -536,7 +568,7 @@
 Get: 384 http://deb.debian.org/debian unstable/main amd64 libtrident-java all 7.3+dfsg3-5.1 [98.5 kB]
 Get: 385 http://deb.debian.org/debian unstable/main amd64 openjfx amd64 11.0.11+1-6 [6948 B]
 Get: 386 http://deb.debian.org/debian unstable/main amd64 substance all 7.3+dfsg3-5.1 [1344 kB]
-Fetched 368 MB in 9s (39.9 MB/s)
+Fetched 368 MB in 4s (94.0 MB/s)
 Preconfiguring packages ...
 Selecting previously unselected package libsystemd-shared:amd64.
 (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19775 files and directories currently installed.)
@@ -1811,8 +1843,8 @@
 Setting up tzdata (2025a-2) ...
 
 Current default time zone: 'Etc/UTC'
-Local time is now:      Wed Feb 26 02:43:47 UTC 2025.
-Universal Time is now:  Wed Feb 26 02:43:47 UTC 2025.
+Local time is now:      Tue Mar 31 09:09:40 UTC 2026.
+Universal Time is now:  Tue Mar 31 09:09:40 UTC 2026.
 Run 'dpkg-reconfigure tzdata' if you wish to change it.
 
 Setting up libxcb-present0:amd64 (1.17.0-2+b1) ...
@@ -2345,7 +2377,11 @@
 fakeroot is already the newest version (1.37-1).
 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
 I: Building the package
-I: Running cd /build/reproducible-path/triplea-1.9.0.0.7062/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../triplea_1.9.0.0.7062-3_source.changes
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for unstable
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/triplea-1.9.0.0.7062/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../triplea_1.9.0.0.7062-3_source.changes
 dpkg-buildpackage: info: source package triplea
 dpkg-buildpackage: info: source version 1.9.0.0.7062-3
 dpkg-buildpackage: info: source distribution unstable
@@ -2359,7 +2395,7 @@
 	sh -c "find . -wholename .*build/debian | xargs echo | sed -e 's^build/tmp^build^g' | xargs rm -Rf"
 	rm -Rf /build/reproducible-path/triplea-1.9.0.0.7062/.gradle /build/reproducible-path/triplea-1.9.0.0.7062/buildSrc/.gradle .m2
    jh_clean
-Duplicate specification "u=s" for option "u"
+Duplicate specification "unlink|u" for option "u"
    dh_clean
  debian/rules binary
 dh binary --with javahelper
@@ -2380,18 +2416,18 @@
 To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: https://docs.gradle.org/4.4.1/userguide/gradle_daemon.html.
 Starting process 'Gradle build daemon'. Working directory: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1 Command: /usr/lib/jvm/java-21-openjdk-amd64/bin/java --add-opens java.base/java.lang=ALL-UNNAMED -Xbootclasspath/a:/usr/share/java/gradle-helper-hook.jar:/usr/share/java/maven-repo-helper.jar -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -cp /usr/share/gradle/lib/gradle-launcher-4.4.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 4.4.1
 Successfully started process 'Gradle build daemon'
-An attempt to start the daemon took 0.671 secs.
-The client will now receive all logging from the daemon (pid: 1612217). The daemon log file: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1/daemon-1612217.out.log
+An attempt to start the daemon took 1.003 secs.
+The client will now receive all logging from the daemon (pid: 102780). The daemon log file: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1/daemon-102780.out.log
 Daemon will be stopped at the end of the build stopping after processing
 Closing daemon's stdin at end of input.
 The daemon will no longer process any standard input.
 Using 12 worker leases.
-Creating new cache for fileHashes, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/4.4.1/fileHashes/fileHashes.bin, access org.gradle.cache.internal.DefaultCacheAccess@ea9e486
-Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@ea9e486
-Creating new cache for fileHashes, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/fileHashes.bin, access org.gradle.cache.internal.DefaultCacheAccess@27746de3
+Creating new cache for fileHashes, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/4.4.1/fileHashes/fileHashes.bin, access org.gradle.cache.internal.DefaultCacheAccess@6cb02e07
+Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@6cb02e07
+Creating new cache for fileHashes, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/fileHashes.bin, access org.gradle.cache.internal.DefaultCacheAccess@22839c27
 Starting Build
 Compiling initialization script '/build/reproducible-path/triplea-1.9.0.0.7062/.gradle/init.d/init.gradle' using SubsetScriptTransformer.
-Creating new cache for metadata-1.1/results, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/transforms-1/metadata-1.1/results.bin, access org.gradle.cache.internal.DefaultCacheAccess@6cf02cc7
+Creating new cache for metadata-1.1/results, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/transforms-1/metadata-1.1/results.bin, access org.gradle.cache.internal.DefaultCacheAccess@6c4c8d58
 Compiling initialization script '/build/reproducible-path/triplea-1.9.0.0.7062/.gradle/init.d/init.gradle' using BuildScriptTransformer.
 Compiling settings file '/build/reproducible-path/triplea-1.9.0.0.7062/settings.gradle' using SubsetScriptTransformer.
 Compiling settings file '/build/reproducible-path/triplea-1.9.0.0.7062/settings.gradle' using BuildScriptTransformer.
@@ -2408,15 +2444,15 @@
 	Linking the generated javadoc to the system JDK API documentation
 All projects evaluated.
 Selected primary task 'jar' from project :
-Creating new cache for annotation-processors, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileContent/annotation-processors.bin, access org.gradle.cache.internal.DefaultCacheAccess@48c1f16a
+Creating new cache for annotation-processors, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileContent/annotation-processors.bin, access org.gradle.cache.internal.DefaultCacheAccess@694971b9
 Tasks to be executed: [task ':compileJava', task ':processResources', task ':classes', task ':debianMavenPom', task ':jar']
-Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@27746de3
-Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/taskHistory/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@479084c5
-Creating new cache for outputFiles, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/buildOutputCleanup/outputFiles.bin, access org.gradle.cache.internal.DefaultCacheAccess@4fc5f991
-:compileJava (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
+Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@22839c27
+Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/taskHistory/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@e38bd26
+Creating new cache for outputFiles, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/buildOutputCleanup/outputFiles.bin, access org.gradle.cache.internal.DefaultCacheAccess@2006ae77
+:compileJava (Thread[#50,Task worker for ':',5,main]) started.
 :compileJava
-Putting task artifact state for task ':compileJava' into context took 0.002 secs.
-Creating new cache for metadata-2.36/module-metadata, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/modules-2/metadata-2.36/module-metadata.bin, access org.gradle.cache.internal.DefaultCacheAccess@41c96b13
+Putting task artifact state for task ':compileJava' into context took 0.004 secs.
+Creating new cache for metadata-2.36/module-metadata, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/modules-2/metadata-2.36/module-metadata.bin, access org.gradle.cache.internal.DefaultCacheAccess@1ab25f1e
 	Loading the Maven rules...
 	Replacing commons-io:commons-io:jar:2.5  ->  commons-io:commons-io:jar:debian
 	Passing through org.apache.commons:commons-parent:jar:debian
@@ -2454,13 +2490,13 @@
 	Passing through org.apache.httpcomponents:httpcomponents-core:jar:debian
 	Passing through commons-logging:commons-logging:jar:debian
 	Passing through commons-codec:commons-codec:jar:debian
-Up-to-date check for task ':compileJava' took 1.636 secs. It is not up-to-date because:
+Up-to-date check for task ':compileJava' took 2.285 secs. It is not up-to-date because:
   No history is available.
 All input files are considered out-of-date for incremental task ':compileJava'.
-Creating new cache for classAnalysis, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/classAnalysis.bin, access org.gradle.cache.internal.DefaultCacheAccess@1f1abdbd
-Creating new cache for jarAnalysis, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/jarAnalysis.bin, access org.gradle.cache.internal.DefaultCacheAccess@1f1abdbd
-Creating new cache for taskJars, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/taskJars.bin, access org.gradle.cache.internal.DefaultCacheAccess@1f1abdbd
-Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@1f1abdbd
+Creating new cache for classAnalysis, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/classAnalysis.bin, access org.gradle.cache.internal.DefaultCacheAccess@ce10826
+Creating new cache for jarAnalysis, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/jarAnalysis.bin, access org.gradle.cache.internal.DefaultCacheAccess@ce10826
+Creating new cache for taskJars, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/taskJars.bin, access org.gradle.cache.internal.DefaultCacheAccess@ce10826
+Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/javaCompile/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@ce10826
 :compileJava - is not incremental (e.g. outputs have changed, no previous execution, etc.).
 Compiling with JDK Java compiler API.
 warning: [options] source value 8 is obsolete and will be removed in a future release
@@ -2474,6 +2510,9 @@
           yield();
           ^
   (to invoke a method called yield, qualify the yield with a receiver or type name)
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/ui/ImageScrollModel.java:4: warning: [deprecation] Observable in java.util has been deprecated
+import java.util.Observable;
+                ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/InGameLobbyWatcher.java:7: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
@@ -2486,42 +2525,27 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/ISetupPanel.java:5: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/ui/ImageScrollModel.java:4: warning: [deprecation] Observable in java.util has been deprecated
-import java.util.Observable;
-                ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/ui/menubar/LobbyMenu.java:41: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/net/MacFinder.java:20: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/db/HashedPassword.java:8: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
-import games.strategy.util.MD5Crypt;
-                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/login/LobbyLoginValidator.java:32: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
-import games.strategy.util.MD5Crypt;
-                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/ModeratorController.java:17: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
-import games.strategy.util.MD5Crypt;
-                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/client/ui/LobbyGamePanel.java:40: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
-import games.strategy.util.MD5Crypt;
-                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/client/login/LobbyLogin.java:20: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/login/ClientLoginValidator.java:15: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/mc/ServerModel.java:17: warning: [deprecation] Observable in java.util has been deprecated
-import java.util.Observable;
-                ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/mc/ServerModel.java:18: warning: [deprecation] Observer in java.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/headlessGameServer/HeadlessServerSetup.java:5: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/GameSelectorPanel.java:14: warning: [deprecation] Observable in java.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/mc/ServerModel.java:17: warning: [deprecation] Observable in java.util has been deprecated
 import java.util.Observable;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/GameSelectorPanel.java:15: warning: [deprecation] Observer in java.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/mc/ServerModel.java:18: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/headlessGameServer/HeadlessGameServer.java:36: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+import games.strategy.util.MD5Crypt;
+                          ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/SetupPanel.java:11: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
@@ -2531,10 +2555,10 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/LocalSetupPanel.java:8: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/MainPanel.java:11: warning: [deprecation] Observable in java.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/GameSelectorPanel.java:14: warning: [deprecation] Observable in java.util has been deprecated
 import java.util.Observable;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/MainPanel.java:12: warning: [deprecation] Observer in java.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/GameSelectorPanel.java:15: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/PBEMSetupPanel.java:24: warning: [deprecation] Observable in java.util has been deprecated
@@ -2543,51 +2567,63 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/PBEMSetupPanel.java:25: warning: [deprecation] Observer in java.util has been deprecated
 import java.util.Observer;
                 ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/MainPanel.java:11: warning: [deprecation] Observable in java.util has been deprecated
+import java.util.Observable;
+                ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/ui/MainPanel.java:12: warning: [deprecation] Observer in java.util has been deprecated
+import java.util.Observer;
+                ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/login/Md5CryptAuthenticator.java:9: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/startup/login/ClientLoginValidator.java:15: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/client/ui/LobbyGamePanel.java:40: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/headlessGameServer/HeadlessGameServer.java:36: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/client/login/LobbyLogin.java:20: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
 import games.strategy.util.MD5Crypt;
                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/headlessGameServer/HeadlessServerSetup.java:5: warning: [deprecation] Observer in java.util has been deprecated
-import java.util.Observer;
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/db/HashedPassword.java:8: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+import games.strategy.util.MD5Crypt;
+                          ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/login/LobbyLoginValidator.java:32: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+import games.strategy.util.MD5Crypt;
+                          ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/lobby/server/ModeratorController.java:17: warning: [deprecation] MD5Crypt in games.strategy.util has been deprecated
+import games.strategy.util.MD5Crypt;
+                          ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/CenterPicker.java:47: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Image image;
                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Tuple.java:10: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final T first;
-                  ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Tuple.java:11: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final S second;
-                  ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/PropertiesUI.java:22: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    init();
-        ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/PropertiesUI.java:39: warning: [this-escape] previous possible 'this' escape happens here via invocation
-    setLayout(new GridBagLayout());
-             ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/map/making/MapPropertyWrapper.java:45: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final IEditableProperty property;
-                                  ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/map/making/MapPropertyWrapper.java:46: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Method setter;
-                       ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/map/making/MapPropertyWrapper.java:50: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Method getter = null;
-                       ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/GameProperties.java:33: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, Object> constantProperties = new HashMap<>();
-                                    ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/GameProperties.java:38: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, IEditableProperty> editableProperties = new HashMap<>();
-                                               ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/GameProperties.java:42: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final List<String> ordering = new ArrayList<>();
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/CenterPicker.java:49: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Map<String, Point> centers = new HashMap<>();
                              ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/properties/GameProperties.java:44: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private Map<String, IEditableProperty> playerProperties = new HashMap<>();
-                                         ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/CenterPicker.java:51: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Map<String, List<Polygon>> polygons = new HashMap<>();
+                                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/CenterPicker.java:108: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+                            ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/PolygonGrabber.java:68: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private List<Polygon> current;
+                        ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/PolygonGrabber.java:71: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private BufferedImage bufferedImage;
+                        ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/PolygonGrabber.java:73: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Map<String, List<Polygon>> polygons = new HashMap<>();
+                                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/PolygonGrabber.java:75: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Map<String, Point> centers;
+                             ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/tools/image/PolygonGrabber.java:134: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+                            ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/ui/mapdata/MapData.java:173: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+      initializeContains();
+                        ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/ui/mapdata/MapData.java:389: warning: [this-escape] previous possible 'this' escape happens here via invocation
+    final Iterator<String> seaIter = getTerritories().iterator();
+                                                   ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/GameData.java:72: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
   private final ReadWriteLock readWriteLock = new ReentrantReadWriteLock();
                               ^
@@ -2642,6 +2678,78 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/GameData.java:112: warning: [this-escape] possible 'this' escape before subclass is fully initialized
     delegateList = new DelegateList(this);
                                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/NamedAttachable.java:9: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final Map<String, IAttachment> m_attachments = new HashMap<>();
+                                         ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Territory.java:20: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    m_units = new UnitCollection(this, getData());
+                                 ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Territory.java:28: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    m_units = new UnitCollection(this, getData());
+                                 ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/PlayerID.java:39: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    m_unitsHeld = new UnitCollection(this, data);
+                                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/UnitCollection.java:21: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final List<Unit> m_units = new ArrayList<>();
+                           ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/UnitCollection.java:22: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final NamedUnitHolder m_holder;
+                                ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Unit.java:32: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    setOwner(owner);
+            ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/DefaultAttachment.java:25: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Attachable m_attachedTo;
+                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/DefaultAttachment.java:31: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    setName(name);
+           ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Tuple.java:10: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final T first;
+                  ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Tuple.java:11: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final S second;
+                  ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/ProductionFrontier.java:12: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final List<ProductionRule> m_rules;
+                                     ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/ProductionFrontier.java:13: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private List<ProductionRule> m_cachedRules;
+                               ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/RepairFrontier.java:12: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final List<RepairRule> m_rules;
+                                 ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/RepairFrontier.java:13: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private List<RepairRule> m_cachedRules;
+                           ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/TechnologyFrontierList.java:14: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final List<TechnologyFrontier> m_technologyFrontiers = new ArrayList<>();
+                                         ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/attachments/TechAttachment.java:65: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private Map<String, Boolean> genericTech = new HashMap<>();
+                               ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/attachments/TechAttachment.java:69: warning: [this-escape] possible 'this' escape before subclass is fully initialized
+    setGenericTechs();
+                   ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/attachments/TechAttachment.java:368: warning: [this-escape] previous possible 'this' escape happens here via invocation
+    for (final TechAdvance ta : getData().getTechnologyFrontier()) {
+                                       ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Triple.java:11: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final T third;
+                  ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/TechnologyFrontier.java:13: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final List<TechAdvance> m_techs = new ArrayList<>();
+                                  ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/TechnologyFrontier.java:14: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private List<TechAdvance> m_cachedTechs;
+                            ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/random/RandomStatsDetails.java:23: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final Map<PlayerID, IntegerMap<Integer>> m_data;
+                                                   ^
+/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/random/RandomStatsDetails.java:26: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
+  private final Map<PlayerID, DiceStatistic> m_playerStats = new HashMap<>();
+                                             ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/util/Version.java:45: warning: [this-escape] possible 'this' escape before subclass is fully initialized
     exactVersion = toString();
                            ^
@@ -2663,21 +2771,9 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/GameMap.java:28: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
   private final Map<String, Territory> m_territoryLookup = new HashMap<>();
                                        ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/NamedAttachable.java:9: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, IAttachment> m_attachments = new HashMap<>();
-                                         ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Territory.java:20: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    m_units = new UnitCollection(this, getData());
-                                 ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Territory.java:28: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    m_units = new UnitCollection(this, getData());
-                                 ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/PlayerList.java:15: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
   private final Map<String, PlayerID> m_players = new LinkedHashMap<>();
                                       ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/PlayerID.java:39: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    m_unitsHeld = new UnitCollection(this, data);
-                                     ^
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/ProductionFrontierList.java:9: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
   private final Map<String, ProductionFrontier> m_productionFrontiers = new HashMap<>();
                                                 ^
@@ -2699,99 +2795,39 @@
 /build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/UnitTypeList.java:15: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
   private final Map<String, UnitType> m_unitTypes = new HashMap<>();
                                       ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/RelationshipTypeList.java:44: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-      createDefaultRelationship(Constants.RELATIONSHIP_TYPE_SELF, RelationshipTypeAttachment.ARCHETYPE_ALLIED, data);
-                               ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/RelationshipTypeList.java:80: warning: [this-escape] previous possible 'this' escape happens here via invocation
-    addRelationshipType(relationshipType);
-                       ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/UnitsList.java:17: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private Map<GUID, Unit> m_allUnits;
-                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Unit.java:32: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    setOwner(owner);
-            ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/TechnologyFrontier.java:13: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final List<TechAdvance> m_techs = new ArrayList<>();
-                                  ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/TechnologyFrontier.java:14: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private List<TechAdvance> m_cachedTechs;
-                            ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/history/History.java:32: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final List<Change> m_changes = new ArrayList<>();
-                             ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/history/History.java:31: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-  private final HistoryWriter m_writer = new HistoryWriter(this);
-                                                           ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/BattleRecordsList.java:16: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<Integer, BattleRecords> battleRecords = new HashMap<>();
-                                            ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/message/PlayerListing.java:29: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, String> m_playerToNodeListing;
-                                    ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/message/PlayerListing.java:30: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, Boolean> m_playersEnabledListing;
-                                     ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/message/PlayerListing.java:31: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, String> m_localPlayerTypes;
-                                    ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/message/PlayerListing.java:33: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Collection<String> m_playersAllowedToBeDisabled;
-                                   ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/framework/message/PlayerListing.java:37: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final Map<String, Collection<String>> m_playerNamesAndAlliancesInTurnOrder;
-                                                ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/delegate/dataObjects/BattleRecord.java:87: warning: [serial] to be effective serialization-related method writeReplace must have no parameters
-  public Object writeReplace(final Object write) {
-                                          ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/oddsCalculator/ta/BattleResults.java:16: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  final List<Unit> m_remainingAttackingUnits;
-                   ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/triplea/oddsCalculator/ta/BattleResults.java:17: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  final List<Unit> m_remainingDefendingUnits;
-                   ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Route.java:34: warning: [serial] non-transient instance field of a serializable class declared with a non-serializable type
-  private final List<Territory> m_steps = new ArrayList<>();
-                                ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Route.java:40: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    setStart(route.get(0));
-            ^
-/build/reproducible-path/triplea-1.9.0.0.7062/src/main/java/games/strategy/engine/data/Route.java:50: warning: [this-escape] possible 'this' escape before subclass is fully initialized
-    setStart(start);
-            ^
 Note: Some input files additionally use or override a deprecated API.
 Note: Some input files additionally use or override a deprecated API that is marked for removal.
 100 warnings
 only showing the first 100 warnings, of 643 total; use -Xmaxwarns if you would like to see more
-Class dependency analysis for incremental compilation took 0.912 secs.
-Created jar classpath snapshot for incremental compilation in 2.966 secs. 36 duplicate classes found in classpath (see all with --debug).
+Class dependency analysis for incremental compilation took 1.507 secs.
+Created jar classpath snapshot for incremental compilation in 4.953 secs. 36 duplicate classes found in classpath (see all with --debug).
 Written jar classpath snapshot for incremental compilation in 0.0 secs.
-:compileJava (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 14.838 secs.
-:processResources (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
+:compileJava (Thread[#50,Task worker for ':',5,main]) completed. Took 19.065 secs.
+:processResources (Thread[#50,Task worker for ':',5,main]) started.
 :processResources
 Putting task artifact state for task ':processResources' into context took 0.0 secs.
-Up-to-date check for task ':processResources' took 0.005 secs. It is not up-to-date because:
+Up-to-date check for task ':processResources' took 0.106 secs. It is not up-to-date because:
   No history is available.
-:processResources (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.023 secs.
-:classes (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
+:processResources (Thread[#50,Task worker for ':',5,main]) completed. Took 0.151 secs.
+:classes (Thread[#50,Task worker for ':',5,main]) started.
 :classes
 Skipping task ':classes' as it has no actions.
-:classes (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.0 secs.
-:debianMavenPom (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
+:classes (Thread[#50,Task worker for ':',5,main]) completed. Took 0.0 secs.
+:debianMavenPom (Thread[#50,Task worker for ':',5,main]) started.
 :debianMavenPom
 Putting task artifact state for task ':debianMavenPom' into context took 0.0 secs.
 Up-to-date check for task ':debianMavenPom' took 0.0 secs. It is not up-to-date because:
   No history is available.
 	Generating pom file /build/reproducible-path/triplea-1.9.0.0.7062/build/debian/triplea.pom
-:debianMavenPom (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.093 secs.
-:jar (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
+:debianMavenPom (Thread[#50,Task worker for ':',5,main]) completed. Took 0.119 secs.
+:jar (Thread[#50,Task worker for ':',5,main]) started.
 :jar
 Putting task artifact state for task ':jar' into context took 0.0 secs.
-Up-to-date check for task ':jar' took 0.012 secs. It is not up-to-date because:
+Up-to-date check for task ':jar' took 0.029 secs. It is not up-to-date because:
   No history is available.
-:jar (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.659 secs.
+:jar (Thread[#50,Task worker for ':',5,main]) completed. Took 0.606 secs.
 
-BUILD SUCCESSFUL in 18s
+BUILD SUCCESSFUL in 25s
 4 actionable tasks: 4 executed
 mv build/libs/triplea-*.jar build/libs/triplea.jar
 make[1]: Leaving directory '/build/reproducible-path/triplea-1.9.0.0.7062'
@@ -2808,8 +2844,8 @@
 To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: https://docs.gradle.org/4.4.1/userguide/gradle_daemon.html.
 Starting process 'Gradle build daemon'. Working directory: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1 Command: /usr/lib/jvm/java-21-openjdk-amd64/bin/java --add-opens java.base/java.lang=ALL-UNNAMED -Xbootclasspath/a:/usr/share/java/gradle-helper-hook.jar:/usr/share/java/maven-repo-helper.jar -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant -cp /usr/share/gradle/lib/gradle-launcher-4.4.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 4.4.1
 Successfully started process 'Gradle build daemon'
-An attempt to start the daemon took 0.551 secs.
-The client will now receive all logging from the daemon (pid: 1613354). The daemon log file: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1/daemon-1613354.out.log
+An attempt to start the daemon took 1.136 secs.
+The client will now receive all logging from the daemon (pid: 104859). The daemon log file: /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/daemon/4.4.1/daemon-104859.out.log
 Daemon will be stopped at the end of the build stopping after processing
 Closing daemon's stdin at end of input.
 The daemon will no longer process any standard input.
@@ -2818,7 +2854,7 @@
 Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@19643b47
 Creating new cache for fileHashes, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/fileHashes.bin, access org.gradle.cache.internal.DefaultCacheAccess@2380b9f1
 Starting Build
-Creating new cache for metadata-1.1/results, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/transforms-1/metadata-1.1/results.bin, access org.gradle.cache.internal.DefaultCacheAccess@57909da9
+Creating new cache for metadata-1.1/results, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/transforms-1/metadata-1.1/results.bin, access org.gradle.cache.internal.DefaultCacheAccess@1e724745
 Settings evaluated using settings file '/build/reproducible-path/triplea-1.9.0.0.7062/settings.gradle'.
 Projects loaded. Root project using build file '/build/reproducible-path/triplea-1.9.0.0.7062/build.gradle'.
 Included projects: [root project 'triplea']
@@ -2830,15 +2866,15 @@
 	Linking the generated javadoc to the system JDK API documentation
 All projects evaluated.
 Selected primary task 'test' from project :
-Creating new cache for annotation-processors, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileContent/annotation-processors.bin, access org.gradle.cache.internal.DefaultCacheAccess@507de7bc
+Creating new cache for annotation-processors, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileContent/annotation-processors.bin, access org.gradle.cache.internal.DefaultCacheAccess@78cc3ca9
 Tasks to be executed: [task ':compileJava', task ':processResources', task ':classes', task ':compileTestJava', task ':processTestResources', task ':testClasses', task ':test']
 Creating new cache for resourceHashesCache, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/fileHashes/resourceHashesCache.bin, access org.gradle.cache.internal.DefaultCacheAccess@2380b9f1
-Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/taskHistory/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@59692788
-Creating new cache for outputFiles, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/buildOutputCleanup/outputFiles.bin, access org.gradle.cache.internal.DefaultCacheAccess@41d8895
-:compileJava (Thread[#50,Task worker for ':',5,main]) started.
+Creating new cache for taskHistory, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/4.4.1/taskHistory/taskHistory.bin, access org.gradle.cache.internal.DefaultCacheAccess@5c876502
+Creating new cache for outputFiles, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/buildOutputCleanup/outputFiles.bin, access org.gradle.cache.internal.DefaultCacheAccess@3553afcc
+:compileJava (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
 :compileJava
 Putting task artifact state for task ':compileJava' into context took 0.003 secs.
-Creating new cache for metadata-2.36/module-metadata, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/modules-2/metadata-2.36/module-metadata.bin, access org.gradle.cache.internal.DefaultCacheAccess@4efdb805
+Creating new cache for metadata-2.36/module-metadata, path /build/reproducible-path/triplea-1.9.0.0.7062/.gradle/caches/modules-2/metadata-2.36/module-metadata.bin, access org.gradle.cache.internal.DefaultCacheAccess@4a0be06e
 	Loading the Maven rules...
 	Replacing commons-io:commons-io:jar:2.5  ->  commons-io:commons-io:jar:debian
 	Passing through org.apache.commons:commons-parent:jar:debian
@@ -2876,21 +2912,21 @@
 	Passing through org.apache.httpcomponents:httpcomponents-core:jar:debian
 	Passing through commons-logging:commons-logging:jar:debian
 	Passing through commons-codec:commons-codec:jar:debian
-Skipping task ':compileJava' as it is up-to-date (took 0.435 secs).
+Skipping task ':compileJava' as it is up-to-date (took 0.723 secs).
 :compileJava UP-TO-DATE
-:compileJava (Thread[#50,Task worker for ':',5,main]) completed. Took 0.457 secs.
-:processResources (Thread[#50,Task worker for ':',5,main]) started.
+:compileJava (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.751 secs.
+:processResources (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
 :processResources
 Putting task artifact state for task ':processResources' into context took 0.0 secs.
-Skipping task ':processResources' as it is up-to-date (took 0.008 secs).
+Skipping task ':processResources' as it is up-to-date (took 0.016 secs).
 :processResources UP-TO-DATE
-:processResources (Thread[#50,Task worker for ':',5,main]) completed. Took 0.011 secs.
-:classes (Thread[#50,Task worker for ':',5,main]) started.
+:processResources (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.019 secs.
+:classes (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
 :classes
 Skipping task ':classes' as it has no actions.
 :classes UP-TO-DATE
-:classes (Thread[#50,Task worker for ':',5,main]) completed. Took 0.0 secs.
-:compileTestJava (Thread[#50,Task worker for ':',5,main]) started.
+:classes (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.0 secs.
+:compileTestJava (Thread[#51,Task worker for ':' Thread 2,5,main]) started.
 :compileTestJava
 Putting task artifact state for task ':compileTestJava' into context took 0.0 secs.
 	Replacing eu.codearte.catch-exception:catch-exception:jar:2.0.0-ALPHA-1  ->  eu.codearte.catch-exception:catch-exception:jar:debian
@@ -2899,7 +2935,7 @@
 	Replacing org.mockito:mockito-core:jar:2.8.47  ->  org.mockito:mockito-core:jar:debian
 	Replacing junit:junit:jar:4.12  ->  junit:junit:jar:debian
 :compileTestJava FAILED
-:compileTestJava (Thread[#50,Task worker for ':',5,main]) completed. Took 0.975 secs.
+:compileTestJava (Thread[#51,Task worker for ':' Thread 2,5,main]) completed. Took 0.737 secs.
 
 FAILURE: Build failed with an exception.
 
@@ -3401,7 +3437,7 @@
 
 * Get more help at https://help.gradle.org
 
-BUILD FAILED in 4s
+BUILD FAILED in 6s
 3 actionable tasks: 1 executed, 2 up-to-date
 dh_auto_test: error: gradle --info --console plain --offline --stacktrace --no-daemon --refresh-dependencies --gradle-user-home .gradle -Duser.home=. -Duser.name=debian -Ddebian.package=triplea -Dfile.encoding=UTF-8 --parallel --max-workers=12 test returned exit code 1
 make[1]: Leaving directory '/build/reproducible-path/triplea-1.9.0.0.7062'
@@ -3437,12 +3473,14 @@
 dpkg-buildpackage: info: binary-only upload (no source included)
 dpkg-genchanges: info: not including original source code in upload
 I: copying local configuration
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/B01_cleanup starting
+I: user script /srv/workspace/pbuilder/91955/tmp/hooks/B01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/1602122 and its subdirectories
-I: Current time: Tue Feb 25 14:45:01 -12 2025
-I: pbuilder-time-stamp: 1740537901
+I: removing directory /srv/workspace/pbuilder/91955 and its subdirectories
+I: Current time: Tue Mar 31 23:11:12 +14 2026
+I: pbuilder-time-stamp: 1774948272