whole_func_string: function(value, silent) {
  		var self = this;
  		var $item, i, idx;
  
  		$item = (value instanceof $) ? value : self.getItem(value);
  		value = hash_key($item.attr('data-value'));
  		i = self.items.indexOf(value);
  
  		if (i !== -1) {
  			$item.remove();
  			if ($item.hasClass('active')) {
  				idx = self.$activeItems.indexOf($item[0]);
  				self.$activeItems.splice(idx, 1);
  			}
  
  			self.items.splice(i, 1);
  			self.lastQuery = null;
  			if (!self.settings.persist && self.userOptions.hasOwnProperty(value)) {
  				self.removeOption(value, silent);
  			}
  
  			if (i < self.caretPos) {
  				self.setCaret(self.caretPos - 1);
  			}
  
  			self.refreshState();
  			self.updatePlaceholder();
  			self.updateOriginalInput({silent: silent});
  			self.positionDropdown();
  			self.trigger('item_remove', value, $item);
  		}
  	}
func_code_string: function(value, silent) {
  		var self = this;
  		var $item, i, idx;
  
  		$item = (value instanceof $) ? value : self.getItem(value);
  		value = hash_key($item.attr('data-value'));
  		i = self.items.indexOf(value);
  
  		if (i !== -1) {
  			$item.remove();
  			if ($item.hasClass('active')) {
  				idx = self.$activeItems.indexOf($item[0]);
  				self.$activeItems.splice(idx, 1);
  			}
  
  			self.items.splice(i, 1);
  			self.lastQuery = null;
  			if (!self.settings.persist && self.userOptions.hasOwnProperty(value)) {
  				self.removeOption(value, silent);
  			}
  
  			if (i < self.caretPos) {
  				self.setCaret(self.caretPos - 1);
  			}
  
  			self.refreshState();
  			self.updatePlaceholder();
  			self.updateOriginalInput({silent: silent});
  			self.positionDropdown();
  			self.trigger('item_remove', value, $item);
  		}
  	}
func_documentation_string: Removes the selected item matching
  the provided value.
  
  @param {string} value