I have to go, so just a quick prototype, for one-way (only grow) - it just happens to give the result you want for the example, but I know if there was a 2-face separation on the ear loop, you would expect the separated part to disappear, and this doesn't do it: [![][1]][1] [![][2]][2] And this goes the other way: [![][3]][3] [![][4]][4] So if you do the first, then the 2nd, you're probably fine, but there's also a question of how many iterations (I did 100) - you need to implement a "while" loop. It can be done, and I've wrote an example on how to do it here: [Implement "while" loop in Geometry Nodes](https://blender.stackexchange.com/q/320815/60486) And here's the screenshots from my answer there: [![][5]][5] **Mat Fix:** [![][6]][6] **Loop Test:** [![][7]][7] **Loop Body:** [![][8]][8] You can unmute the node above, so that the selection both grows and shrinks. This will yield such result: [![][9]][9] (look at the ear) [<img src="https://blend-exchange.com/embedImage.png?bid=B5nqnnpq" />](https://blend-exchange.com/b/B5nqnnpq/) [1]: https://i.sstatic.net/kkPWUJb8.png [2]: https://i.sstatic.net/km6ajOb8.png [3]: https://i.sstatic.net/IYseTV6W.png [4]: https://i.sstatic.net/JLwn932C.png [5]: https://i.sstatic.net/plHnTFfg.png [6]: https://i.sstatic.net/eEtSkXvI.png [7]: https://i.sstatic.net/DdRNkeD4.png [8]: https://i.sstatic.net/MCsmTCpB.png [9]: https://i.sstatic.net/JfniBat2.png