exit 1 on error -- but i guess this can't happen anyway?