WTF, isn't this the workaround I did when I saw Damien's BOT?
W/e, let's pretend the code / method is yours, anyway, what I did was trash, the most efficient way would be using Linq, as Damien did for his original idea.
This could be improved a lot, as it will only read one reference for one...