anchor.diff:  
     int get hashCode => _duration.hashCode;
   
  +  /**
  +   * Compares this Duration to [other],
  +   * returning zero if the values are equal.
  +   *
  +   * This function returns a negative integer
  +   * if this Duration is smaller than [other],
  +   * or a positive integer if it is greater.
  +   */
     int compareTo(Duration other) => _duration.compareTo(other._duration);
   
     String toString() {
  
positive.code:                     microseconds;
  
    /**
     * Returns the sum of this [Duration] and [other]  as a new [Duration].
     */
    Duration operator +(Duration other) {
      return new Duration(microseconds: _duration + other._duration);
    }
  
    /**
     * Returns the difference of this [Duration] and [other] as a new
     * [Duration].
     */
    Duration operator -(Duration other) {
      return new Duration(microseconds: _duration - other._duration);
    }
  
    /**
     * Multiplies this [Duration] by the given [factor] and returns the result
     * as a new [Duration].
     *
     * Note that when [factor] is a double, and the duration is greater than
     * 53 bits, precision is lost because of double-precision arithmetic.
  
negative.code: part of dart.core;
  
  /**
   * A span of time, such as 27 days, 4 hours, 12 minutes, and 3 seconds.
   *
   * To create a new Duration object, use this class's single constructor
   * giving the appropriate arguments:
   *
   *     Duration fastestMarathon = new Duration(hours:2, minutes:3, seconds:2);
   *
   * The Duration is the sum of all individual parts.
   * This means that individual parts can be larger than the next-bigger unit.
   * For example, [minutes] can be greater than 59.
   *
   *     assert(fastestMarathon.inMinutes == 123);
   *
   * All individual parts are allowed to be negative.
   *
   * Use one of the properties, such as [inDays],
   * to retrieve the integer value of the Duration in the specified time unit.
   * Note that the returned value is rounded down.
   * For example, 
   *
   *     Duration aLongWeekend = new Duration(hours:88);
   *     assert(aLongWeekend.inDays == 3);
   *
   * This class provides a collection of arithmetic
   * and comparison operators,
   * plus a set of constants useful for converting time units.
   *
   * See [DateTime] to represent a point in time.
   * See [Stopwatch] to measure time-spans.
   *
   */
  class Duration implements Comparable<Duration> {
    static const int MICROSECONDS_PER_MILLISECOND = 1000;
  