Are any of those programs smaller? There's so much code in this one, I'm not really sure what's relevant to the problem and what isn't.
Any other problems with this one you were wondering about?
Any other problems with this one you were wondering about?