public EnumerableSolids Intersect(KtRegion region)
 {
     if (region is KtHollowRegion hollow)
     {
         return(Intersect(hollow));
     }
     if (region is KtSolidRegion solid)
     {
         return(Intersect(solid));
     }
     return(null);
 }
 public override bool Inscribes(KtRegion region) => region?.All(Inscribes) == true && holes.All(reg => !reg.Inscribes(region));