exceptions -> do_curry