ok , i did a litle more testing... as I thought already , the evaluate didn't do anything wrong and is needed because of some other code...
you were right on the other hand on the OR ... i changed it to AND ... and magic happened.... still baffled why though...
if i was writing diagrams it would've been or... because:
if the item in the loop is not hdmi or dvi or ....
do this
so it seemed more logical to me that way