anchor.diff:  /// * the annotation is associated with a method that has this annotation that
   ///   can return anything other than a newly allocated object or `null`.
   const _Factory factory = const _Factory();
  +
  +/// Used to annotate a class `C`. Indicates that `C` and all subtypes of `C`
  +/// must be immutable.
  +///
  +/// A class is immutable if all of the instance fields of the class, whether
  +/// defined directly or inherited, are `final`.
  +///
  +/// Tools, such as the analyzer, can provide feedback if
  +/// * the annotation is associated with anything other than a class, or
  +/// * a class that has this annotation or extends, implements or mixes in a
  +///   class that has this annotation is not immutable.
  +const Immutable immutable = const Immutable();
   
   /// Used to annotate a const constructor `c`. Indicates that any invocation of
   /// the constructor must use the keyword `const` unless one or more of the
  
positive.code: /// in the language tour.
  library meta;
  
  /// Used to annotate an instance or static method `m`. Indicates that `m` must
  /// either be abstract or must return a newly allocated object or `null`. In
  /// addition, every method that either implements or overrides `m` is implicitly
  
negative.code:   /// Initialize a newly created instance to have the given [reason].
    const Required([this.reason]);
  }
  
  class _Checked {
    const _Checked();
  