private static void Part1()
        {
            string input = string.Empty;
            int    tempIndex;

            IList <Fabric>    claims          = new List <Fabric>();
            ISet <Coordinate> usedCoordinates = new HashSet <Coordinate>(new CoordinateComparer());

            while ((input = Console.ReadLine()) != "end")
            {
                tempIndex = input.IndexOf("@");
                claims.Add(Fabric.Factory(input.Substring(tempIndex + 2)));
            }

            for (int j = 0; j < claims.Count; j++)
            {
                for (int k = 0; k < claims.Count; k++)
                {
                    if (k != j)
                    {
                        claims[j].CheckClaimOverlaps(claims[k], usedCoordinates);
                    }
                }
            }

            Console.WriteLine($"The answer is: {usedCoordinates.Count}");
            Console.ReadLine();
        }
        private static void Part2()
        {
            string input = string.Empty;
            string id    = string.Empty;
            int    tempIndex;

            IList <Fabric> claims          = new List <Fabric>();
            ISet <string>  invalidClaimIDs = new HashSet <string>();

            while ((input = Console.ReadLine()) != "end")
            {
                tempIndex = input.IndexOf("@");
                id        = input.Substring(0, tempIndex);
                claims.Add(Fabric.Factory(input.Substring(tempIndex + 2), id));
            }

            for (int j = 0; j < claims.Count; j++)
            {
                for (int k = 0; k < claims.Count; k++)
                {
                    if (j != k && claims[j].CheckForOverlap(claims[k]))
                    {
                        invalidClaimIDs.Add(claims[j].ID);
                    }
                }
            }

            for (int i = 0; i < claims.Count; i++)
            {
                if (!invalidClaimIDs.Contains(claims[i].ID))
                {
                    Console.WriteLine(claims[i].ID);
                }
            }
            Console.ReadLine();
        }