var check = new Action<string, string, string> ((product, min, max) =>
{
var minVersion = Version.Parse (min);
var maxVersion = Version.Parse (max);
var foundMax = false;
var foundMin = false;
var versions = doc.SelectNodes ($"/plist/dict/key[text()='KnownVersions']/following-sibling::dict[1]/key[text()='{product}']/following-sibling::array[1]/string");
if (versions.Count == 0) {
// Skip this (iOS/tvOS/watchOS versions for macOS, or vice versa)
Console.Error.WriteLine ($"Found the {product} version {v} in {Path.GetFileName (plistPath)}, but it's smaller than the supported min {product} version we support ({min}).");
Console.Error.WriteLine ($"Found the {product} version {v} in {Path.GetFileName (plistPath)}, but it's higher than the supported max {product} version we support ({max}).");