code: function select($query = '*', $index = false, $recursive = true, $check_self = false) {
  		$s = new $this->selectClass($this, $query, $check_self, $recursive);
  		$res = $s->result;
  		unset($s);
  		if (is_array($res) && ($index === true) && (count($res) === 1)) {
  			return $res[0];
  		} elseif (is_int($index) && is_array($res)) {
  			if ($index < 0) {
  				$index += count($res);
  			}
  			return ($index < count($res)) ? $res[$index] : null;
          } else {
  			return $res;
  		}
  	}
docs: Performs css query on node
  @param string $query
  @param int|bool $index True to return node instead of array if only 1 match,
  false to return array, int to return match at index, negative int to count from end
  @param bool|int $recursive
  @param bool $check_self Include this node in search or only search child nodes
  @return DomNode[]|DomNode Returns an array of matching {@link DomNode} objects
  or a single {@link DomNode} if `$index` is not false.