code: function (hash) {
  		var wrapper = this;
  
  		each(['x', 'y', 'r', 'start', 'end', 'width', 'height', 'innerR', 'anchorX', 'anchorY'], function (key) {
  			wrapper[key] = pick(hash[key], wrapper[key]);
  		});
  
  		wrapper.attr({
  			d: wrapper.renderer.symbols[wrapper.symbolName](
  				wrapper.x,
  				wrapper.y,
  				wrapper.width,
  				wrapper.height,
  				wrapper
  			)
  		});
  	}
docs: /* hasClass and removeClass are not (yet) needed
  hasClass: function (className) {
  return attr(this.element, 'class').indexOf(className) !== -1;
  },
  removeClass: function (className) {
  attr(this.element, 'class', attr(this.element, 'class').replace(className, ''));
  return this;
  },
   
  If one of the symbol size affecting parameters are changed,
  check all the others only once for each call to an element's
  .attr() method
  @param {Object} hash