public static void Main()
string improperlyClosedTagsHtml = "<p>Hello, <p><strong>world!</p>";
var dom = new HtmlDocument()
OptionCheckSyntax = true,
dom.LoadHtml(improperlyClosedTagsHtml);
foreach (var node in dom.DocumentNode.Descendants())
Console.WriteLine($"{node.Name}, {node.OuterHtml}, {node.EndNode.OuterHtml}, {node.Closed}");
if (dom.ParseErrors != null && dom.ParseErrors.Any())
var errorMessages = dom.ParseErrors.Select(error => $"Code: {error.Code}, Reason: {error.Reason}, Line: {error.Line}, Position: {error.LinePosition}");
string combinedErrors = string.Join(Environment.NewLine, errorMessages);
Console.WriteLine("HTML Parse Errors:");
Console.WriteLine(combinedErrors);
Console.WriteLine("NO HTML Parse Errors");