code: function() {
  		var clone = new this.constructor();
  		for (var key in this) {
  			if (key == "query") {
  				clone[key] = lib.factory.clone(this[key]);
  			} else {
  				clone[key] = this[key];
  			}
  		}
  		return clone;
  	}
docs: .clone()