This functions happens to do ISO parsing as well as fallback. I think if we separate out the iso parsing in its own function (which can return if it was successful), then you wouldn't need this `useFallback` hack.