anchor.diff:  
     get _visibleItemsWindowSize => ref('itemsDiv') != null ? ref('itemsDiv').marginEdge.width : null;
     get _shownItemCount => _visibleItemsWindowSize ~/ _spanWidth;
  +  get _minMarginLeft => _visibleItemsWindowSize - (items.length * _spanWidth);
     get _shouldDrawLeft => true;
     get _shouldDrawRight => true;
     get _scrollListWidth => _spanWidth*(lastIndex-firstIndex);
  
positive.code:     ss.add(window.onResize.listen((_) => _scrollToCentroid()));
      _scrollToCentroid();
      redraw();
    }
  
    componentWillUnmount() {
  
negative.code: 
                  },  items.getRange(firstIndex, lastIndex).map((item) => span({
                        'ref' : '${item[VALUE]}',
                        'onMouseDown': (_) => onChange(item[VALUE]),
                        'className': "${item[CLASSNAME]} ${useAnimation ? "" : noAnimationClass}",
                      }, item[TEXT])).toList()
              )
          ),
          _renderArrow(false),
          showFirstLast ? _renderFastRightArrow() : div({})
        ]);
  
  }