The double split/join could be done as $output=split($output, @crlf) but otherwise it sure looks neat and simple. Funny thing is I grew up with 64k or less of ram doing assembly code and after a zillion years I still don't consider doing a split on a file a few mb large. Silly me of course typing this on a laptop with 1Gb of ram... Makes me think that the lonkonizer was born 1 or 2 decades too late... Them good old days, bloody fights over 1 bytes or 2 cpu cycles...