code: @Override
      public MutableClock withZone(ZoneId zone) {
          Objects.requireNonNull(zone, "zone");
          if (zone.equals(this.zone)) {
              return this;
          }
          return new MutableClock(instantHolder, zone);
      }
docs: Returns a {@code MutableClock} that uses the specified time-zone and that
  has shared updates with this clock.
  <p>
  Two clocks with shared updates always have the same instant, and all
  updates applied to either clock affect both clocks.
  
  @param zone the time-zone to use for the returned clock, not null
  @return a view of this clock in the specified time-zone, not null