> I moved the return back into the Try, and it works. For what ever > reason, it didn't work before, works now.
Well, with your refactoring, you changed the scope chain around. But your new version attempts to instantiate at least 1 unnecessary object and possibly well more than i^2 extra ones, where i is the index where the match is found. The recursion is kinda out of control. The previous version just straightforwardly tried a max of n instances, where n is the number of possible object types. -- S.
