public function current()
	{
		list($option, $values) = parent::current();
		
		if (isset($this->getAliasOptions()[ltrim($option, '-')]))
		{
			$option = $this->getAliasOptions()[ltrim($option, '-')];
		}
		
		$option = $option[0] == '-' ? $option : '-'.$option;
		
		if ($option == '-output')
		{
			return [];
		}
		
		$options = [];
		
		if ($option == '-map' || $option == '-metadata')
		{
			foreach ($option == '-metadata' ? array_merge(...$values) : $values as $key => $value)
			{
				$options[] = $option;
				$options[] = is_int($key) ? $value : sprintf('%s=%s', $key, $value);
			}
		}
		else if (stripos($option, 'filter') === 1)
		{
			// array_merge_recursive(...$values)
			$options[] = $option;
			$options[] = implode('; ', $values);
		}
		else if (($value = array_pop($values)) !== false)
		{
			$options[] = $option;
			
			if (is_scalar($value) && trim($value) != '' && $value !== true)
			{
				$options[] = $value;
			}
		}
		
		return $options;
	}