code: private void tryRegisterTimeZone() {
          try {
              registered.put(SimpleTimeZone.class, JDKStringConverter.TIME_ZONE);
  
          } catch (Throwable ex) {
              if (LOG) {
                  System.err.println("tryRegisterTimeZone1: " + ex);
              }
          }
          try {
              TimeZone zone = TimeZone.getDefault();
              registered.put(zone.getClass(), JDKStringConverter.TIME_ZONE);
  
          } catch (Throwable ex) {
              if (LOG) {
                  System.err.println("tryRegisterTimeZone2: " + ex);
              }
          }
          try {
              TimeZone zone = TimeZone.getTimeZone("Europe/London");
              registered.put(zone.getClass(), JDKStringConverter.TIME_ZONE);
  
          } catch (Throwable ex) {
              if (LOG) {
                  System.err.println("tryRegisterTimeZone3: " + ex);
              }
          }
      }
docs: Tries to register the subclasses of TimeZone.
  Try various things, doesn't matter if the map entry gets overwritten.