class TemporalUnitWithinOffset extends TemporalUnitOffset {

  public TemporalUnitWithinOffset(long value, TemporalUnit unit) {
    super(value, unit);
  }

  /**
   * Checks if difference between temporal values is less then or equal to offset.
   * @param temporal1 first temporal value to be validated against second temporal value.
   * @param temporal2 second temporal value.
   * @return true if difference between temporal values is more than offset value.
   */
  @Override
  public boolean isBeyondOffset(Temporal temporal1, Temporal temporal2) {<FILL_FUNCTION_BODY>}

  /**
   * {@inheritDoc}
   */
  @Override
  public String getBeyondOffsetDifferenceDescription(Temporal temporal1, Temporal temporal2) {
    return "within " + super.getBeyondOffsetDifferenceDescription(temporal1, temporal2);
  }
}

    try {
      return getDifference(temporal1, temporal2) > value;
    } catch (@SuppressWarnings("unused") ArithmeticException e) {
      return getAbsoluteDuration(temporal1, temporal2).compareTo(Duration.of(value, unit)) > 0;
    }
  
<methods>public void <init>(long, java.time.temporal.TemporalUnit) ,public boolean equals(java.lang.Object) ,public java.lang.String getBeyondOffsetDifferenceDescription(java.time.temporal.Temporal, java.time.temporal.Temporal) ,public java.time.temporal.TemporalUnit getUnit() ,public int hashCode() <variables>protected final non-sealed java.time.temporal.TemporalUnit unit,protected final non-sealed long value