that's the weird part! I understand your comment; but I printed out the variable just before calling findnodes (the line of code that breaks) - it's EXACTLY the same as the hard-coded value that I tried in find nodes which succeeds!
I know it sounds weird, but that's why i am confused too!