Yeah, it's an XML document that contains an entire other XML document as a string. I already knew that when I came to the method. I suppose I should have mentioned that.

All I wanted to know was where the file was coming from and where the result was going. I thought I would have been in and out of a method like this in under 5 seconds—or better yet, not have to read the parse method at all—but instead it's all results being assigned to random properties and throwing exceptions just to catch them again 5 lines later and I can't follow the flow of this stuff for shit.

One, two, one two three, one, one two three, one, one two three four five.

That's the trick here, is that this.result implements the same interface as the function-local result. So when I skimmed through this trying to find how result gets set I'm like “ok, you put result into an XML parser, then you parse it, and you get an XML result. Then you parse the XML result and the result of that goes into result? Wtf?”

One, two, one two three, one, one two three, one, one two three four five.