anchor.diff:      if (widget.curve != oldWidget.curve)
         _updateCurve();
       _controller.duration = widget.duration;
  -    _controller.reverseDuration = widget.reverseDuration;
       if (_constructTweens()) {
         forEachTween((Tween<dynamic> tween, dynamic targetValue, TweenConstructor<dynamic> constructor) {
           _updateTween(tween, targetValue);
  
positive.code:   /// The duration over which to animate the parameters of this container.
    final Duration duration;
  
    /// The duration over which to animate the parameters of this container when
    /// the animation is going in the reverse direction.
    ///
    /// Defaults to [duration] if not specified.
    final Duration reverseDuration;
  
    @override
    ImplicitlyAnimatedWidgetState<ImplicitlyAnimatedWidget> createState();
  
  
negative.code:     super.initState();
      _controller = AnimationController(
        duration: widget.duration,
        debugLabel: kDebugMode ? '${widget.toStringShort()}' : null,
        vsync: this,
      );
  