file parsing utilities, not great yet