| Last question, is using "fst/snd" really a problem as I suspected by | using the constant twice? (I actually didn't explicitly inline the | constant by two calls of unsafePerfromIO.) Using a constant twice should not duplicate the work of computing it, if that's what you mean S