Intersecting Curves with multiple solids

Hello all,

I am working on a bigger script which involved getting all the intersection points from grids and using them to create a hole model around it ( beams , columns and floors )

Part of the exercise where I got stuck is find intersections between the curves which I am going to use to create my Revit components and Revit Shafts.

Now , I managed to get the shafts as Solids and my list of lists of curves ( yes I need them in that sequence and check if Flattening helps , which doesn’t )

Problem is that I don’t have a final number of shafts yet so I need help with getting a more robust way of checking if my curves intersect which one of the solids and and those that do to get excluded from my list which I am going to use later. Note I already took into account the possibility that I might not have any shafts so use the list as it is. Note ( the current arrangement doesn’t work properly ( am supposed to get 39 elements and I am getting 36 ).
Also I checked and I am getting curves that do intersect with one of the solids.