with cases, esac