code: public void printZ(Appendable out)
          throws IOException
      {
          switch (_precision)
          {
              case YEAR:
              case MONTH:
              case DAY:
              {
                  assert _offset == UNKNOWN_OFFSET;
                  // No need to adjust offset, we won't be using it.
                  print(out);
                  break;
              }
              case MINUTE:
              case SECOND:
              case FRACTION:
              {
                  Timestamp ztime = this.clone();
                  ztime._offset = UTC_OFFSET;
                  ztime.print(out);
                  break;
              }
          }
      }
docs: Prints to an {@code Appendable} the string representation (in Ion format)
  of this Timestamp in UTC.
  <p>
  This method produces the same output as {@link #toZString()}.
  
  @param out not {@code null}
  
  @throws IOException propagated when the {@code Appendable} throws it.
  
  @see #print(Appendable)