anchor.diff:    }
     
     get hitArea {
  -    final transform = worldTransform;    
  -    final wx = transform[2];
  -    final wy = transform[5];
  -    return new Rectangle(wx - (_width * _pivotX), wy - (_height * _pivotY), _width, _height);
  +    _updateTransform();
  +    return _bounds;
     }
     
     get worldTransform {
  +    _updateTransform();
  +    return _worldTransform;
  +  }
  +  
  +  _updateTransform() {
       if(_dirty) {
         _dirty = false;
         
  -      var sr = math.sin(_rotation);
  -      var cr = math.cos(_rotation);
  +      final sr = math.sin(_rotation);
  +      final cr = math.cos(_rotation);
         
         final Matrix3 parentTransform = parent != null ? parent.worldTransform : new Matrix3.identity();
         
  
positive.code:     visible = interactive = true;
      _localTransform = new Matrix3.identity();
      _worldTransform = new Matrix3.identity();
    }
    
    removeFromParent() {
  
negative.code:   double _x, _y, _width, _height, _pivotX, _pivotY, _skewX, _skewY, _scaleX, _scaleY, _rotation, _alpha;
    bool _dirty, visible, interactive;
    Matrix3 _localTransform, _worldTransform;
    Rectangle _bounds;
    
    DisplayObject() {
      x = y = width = height = rotation = pivotX = pivotY = 0.0;
  