{#- Snowflake: wrap procedure call in a scripting block to handle output params.
    Declares LET variables, calls the proc, captures the result set,
    and returns it as a table so RESULT_SCAN can materialize it. -#}
BEGIN
{{ pre_execute }}
LET _RS RESULTSET := ({{ run }});
RETURN TABLE(_RS);
END;
