anchor.diff:      } else {
         _restoreStyles(t.style);
       }
  +
  +    _transitionEndTimer = null;
     }
   
  +  _setStyle(CssStyleDeclaration style, String propName, String value) =>
  +      _listWithVenderPrefix(propName).forEach((name) {
  +          style.setProperty(name, value); print(name);});
     _saveStyles(CssStyleDeclaration style) =>
         PROP_NAMES.forEach((p) => _saveStyle(style, p));
     _saveStyle(CssStyleDeclaration style, String propName) {
  
positive.code:       return;
      }
  
      _saveStyles(t.style);
  
      t.style.transform = 'scale(0)';
      t.style.opacity = '0';
      t.style.transition = 'transform $TRANSITION_DURATION ease-in, '
          'opacity $TRANSITION_DURATION ease-out';
      final Point<double> delta = getCenterPoint(this) - getTopLeftPoint(t);
      t.style.transformOrigin = '${delta.x.round()}px ${delta.y.round()}px';
    }
  
    void _unfoldTarget() {
  
negative.code: library fold_button;
  
  import 'dart:html';
  import 'dart:async';
  import 'package:polymer/polymer.dart';
  
  @CustomTag('fold-button')
  class FoldButtonElement extends PolymerElement {
    static const List<String> PROP_NAMES =
        const ['display', 'transform', 'opacity', 'transform-origin', 'transition'];
    static const TRANSITION_DURATION = const Duration(milliseconds: 200);
    static const DISPLAY_DELAY = const Duration(milliseconds: 80);
  
    @PublishedProperty(reflect: true)
    String get target => readValue(#target);
  