protected function parseLine(string $line, array $headers)
    {
        foreach ($this->headers as $field => $regex) {
            if (preg_match('/^[ \t\/*#@]*'.preg_quote($regex, '/').':(.*)$/mi', $line, $match)
                && $match[0]
                && isset($headers[$field])) {
                return preg_replace('/:\s?+.+\s?+/', ': '.$headers[$field], $match[0])."\n";
            }
        }

        return $line;
    }