exception thrown at a higher level, result = {ok,} unwrap helper