anchor.diff:  const Duration _kDropDownMenuDuration = const Duration(milliseconds: 300);
   const double _kMenuItemHeight = 48.0;
   const EdgeInsets _kMenuVerticalPadding = const EdgeInsets.symmetric(vertical: 8.0);
  -const EdgeInsets _kMenuHorizontalPadding = const EdgeInsets.symmetric(horizontal: 36.0);
  +const EdgeInsets _kMenuHorizontalPadding = const EdgeInsets.symmetric(horizontal: 4.0);
   const double _kBaselineOffsetFromBottom = 20.0;
   const double _kBottomBorderHeight = 2.0;
   const Border _kDropDownUnderline = const Border(bottom: const BorderSide(color: const Color(0xFFBDBDBD), width: _kBottomBorderHeight));
  
positive.code:     Widget result = new DefaultTextStyle(
        style: style,
        child: new Row(
          mainAxisSize: MainAxisSize.min,
          mainAxisAlignment: MainAxisAlignment.spaceBetween,
          children: <Widget>[
            // We use an IndexedStack to make sure we have enough width to show any
            // possible item as the selected item without changing size.
            new IndexedStack(
              key: _itemKey,
              index: _selectedIndex,
              alignment: FractionalOffset.centerLeft,
              children: config.items
  
negative.code: 
    void _handleTap() {
      assert(_currentRoute == null);
      final RenderBox itemBox = context.findRenderObject();
      final Rect itemRect = itemBox.localToGlobal(Point.origin) & itemBox.size;
      final Completer<_DropDownRouteResult<T>> completer = new Completer<_DropDownRouteResult<T>>();
      _currentRoute = new _DropDownRoute<T>(
  