anchor.diff:  
   /// The logic and internal state for a [StatefulWidget].
   ///
  -/// State is information (1) that can be read synchronously when the widget is
  -/// built and (2) for which we will be notified when it changes.
  +/// State is information that (1) can be read synchronously when the widget is
  +/// built and (2) might change during the lifetime of the widget. It is the
  +/// responsibility of the widget implementer to ensure that the [State] is
  +/// promptly notified when such state changes, using [State.setState].
   ///
   /// [State] objects are created by the framework by calling the
   /// [StatefulWidget.createState] method when inflating a [StatefulWidget] to
  
positive.code:   /// After calling [dispose], the framework severs the [State] object's
    /// connection with the [BuildContext].
    BuildContext get context => _element;
  
    /// Whether this [State] object is currently in a tree.
    ///
  
negative.code:   /// Subclasses should override this method to release any resources retained
    /// by this object (e.g., stop any active animations).
    ///
    /// If a [State]'s [build] method depends on an object that can itself change
    /// state, for example a [ChangeNotifier] or [Stream], or some other object to
    /// which one can subscribe to receive notifications, then the [State] should
    /// subscribe to that object during [initState], unsubscribe from the old
    /// object and subscribe to the new object when it changes in
    /// [didUpdateConfig], and then unsubscribe from the object in [dispose].
    ///
    /// If you override this, make sure to end your method with a call to
    /// super.dispose().
    ///
    /// See also [deactivate], which is called prior to [dispose].
    @protected
    @mustCallSuper
    void dispose() {
  