Boolean intersect mutiple breps in grasshopper

Hi Rhino forums, I am working on this project that invole pattern randomization and cut the entire layout with mutiple shapes. In the cutting process, I use split breps in shape component to help me cut the pattern collection in to a specific shape, but the outcome of the remaining pattern collection is uncontroable, meaning what is to keep and what is to omit is not the same every time I run the script. Please help me with the this issue, much thanks in advance!
Would there be a component missing to achieve what I want or would there be a work around to achieve the same goal?

Desire outcomes
current state
Split mutiple breps.gh (19.9 KB)
Splting shapes and repetive pattern.3dm (8.8 MB)