Is it an option to process the IFS file through some kind of brute force
array/string approach ? Since the file is pretty simple you may be able to
receive the file into the IFS and process it that way.
If it was me I think I'd use Scott's parser but if this avoids some hoops it
might be worth considering.