sub main_loop { { ... stuff happens ... ... use 'last' instead of 'return'? } ... restore settings here }