Calling Node.AllPolygons will multiplicate the polygons drastically due to: `List<Polygon> list = polygons;` This breaks the initial data structure due to not copying the data to a new list. The correct code should be: `List<Polygon> list = new List<Polygon>(polygons);`