public function heading($text, array $options = [], $small = null, array $smallOptions = [])
    {
        $options = optionsParser($options);
        $type = $options->consume('type');
        $type = is_string($type) && preg_match('/^h[1-6]$/', $type) ? $type : 'h2';

        $text = $small ? sprintf('%s %s', $text, self::small($small, $smallOptions)) : $text;

        return self::tag($type, $text, $options->toArray());
    }