create table t1(a int, b int); -- profiler check set plpgsql_check.profiler to on; create function f1() returns void as $$ begin if false then insert into t1 values(10,20); update t1 set a = 10; delete from t1; end if; end; $$ language plpgsql; select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------- 1 | | | 2 | 2 | | begin 3 | 3 | | if false then 4 | 4 | | insert into t1 values(10,20); 5 | 5 | | update t1 set a = 10; 6 | 6 | | delete from t1; 7 | | | end if; 8 | | | end; (8 rows) select f1(); f1 ---- (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------- 1 | | | 2 | 2 | {1} | begin 3 | 3 | {1} | if false then 4 | 4 | {0} | insert into t1 values(10,20); 5 | 5 | {0} | update t1 set a = 10; 6 | 6 | {0} | delete from t1; 7 | | | end if; 8 | | | end; (8 rows) select plpgsql_profiler_reset('f1()'); plpgsql_profiler_reset ------------------------ (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------- 1 | | | 2 | 2 | | begin 3 | 3 | | if false then 4 | 4 | | insert into t1 values(10,20); 5 | 5 | | update t1 set a = 10; 6 | 6 | | delete from t1; 7 | | | end if; 8 | | | end; (8 rows) select f1(); f1 ---- (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------- 1 | | | 2 | 2 | {1} | begin 3 | 3 | {1} | if false then 4 | 4 | {0} | insert into t1 values(10,20); 5 | 5 | {0} | update t1 set a = 10; 6 | 6 | {0} | delete from t1; 7 | | | end if; 8 | | | end; (8 rows) select plpgsql_profiler_reset_all(); plpgsql_profiler_reset_all ---------------------------- (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------- 1 | | | 2 | 2 | | begin 3 | 3 | | if false then 4 | 4 | | insert into t1 values(10,20); 5 | 5 | | update t1 set a = 10; 6 | 6 | | delete from t1; 7 | | | end if; 8 | | | end; (8 rows) drop function f1(); create or replace function f1() returns void as $$ begin raise notice '1'; exception when others then raise notice '2'; end; $$ language plpgsql; select f1(); NOTICE: 1 f1 ---- (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+---------------------------- 1 | | | 2 | 2 | {1} | begin 3 | 3 | {1} | raise notice '1'; 4 | | | exception when others then 5 | 5 | {0} | raise notice '2'; 6 | | | end; (6 rows) drop function f1(); -- test queryid retrieval create function f1() returns void as $$ declare t1 text = 't1'; begin insert into t1 values(10,20); EXECUTE 'update ' || 't1' || ' set a = 10'; EXECUTE 'delete from ' || t1; end; $$ language plpgsql; select plpgsql_profiler_reset_all(); plpgsql_profiler_reset_all ---------------------------- (1 row) select plpgsql_profiler_install_fake_queryid_hook(); plpgsql_profiler_install_fake_queryid_hook -------------------------------------------- (1 row) select f1(); f1 ---- (1 row) select queryids, lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('f1()'); queryids | lineno | stmt_lineno | exec_stmts | source ----------+--------+-------------+------------+------------------------------------------------ | 1 | | | | 2 | | | declare | 3 | | | t1 text = 't1'; | 4 | 4 | {1} | begin {3} | 5 | 5 | {1} | insert into t1 values(10,20); {2} | 6 | 6 | {1} | EXECUTE 'update ' || 't1' || ' set a = 10'; {4} | 7 | 7 | {1} | EXECUTE 'delete from ' || t1; | 8 | | | end; (8 rows) select plpgsql_profiler_remove_fake_queryid_hook(); plpgsql_profiler_remove_fake_queryid_hook ------------------------------------------- (1 row) drop function f1(); -- don't crash on empty dynamic query create or replace function f1() returns void as $$ begin execute ''; end; $$ language plpgsql; select f1(); f1 ---- (1 row) drop function f1(); create or replace function covtest(int) returns int as $$ declare a int = $1; begin a := a + 1; if a < 10 then a := a + 1; drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function; drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function(); drop function test_function; drop function test_function(); end if; a := a + 1; return a; end; $$ language plpgsql; select covtest(10); covtest --------- 12 (1 row) -- should not crash select stmtid, exec_stmts, stmtname from plpgsql_profiler_function_statements_tb('covtest'); stmtid | exec_stmts | stmtname --------+------------+----------------- 1 | 1 | statement block 2 | 1 | assignment 3 | 1 | IF 4 | 0 | assignment 5 | 0 | SQL statement 6 | 0 | SQL statement 7 | 0 | SQL statement 8 | 0 | SQL statement 9 | 0 | SQL statement 10 | 0 | SQL statement 11 | 0 | SQL statement 12 | 0 | SQL statement 13 | 0 | SQL statement 14 | 0 | SQL statement 15 | 0 | SQL statement 16 | 0 | SQL statement 17 | 0 | SQL statement 18 | 0 | SQL statement 19 | 0 | SQL statement 20 | 0 | SQL statement 21 | 0 | SQL statement 22 | 0 | SQL statement 23 | 0 | SQL statement 24 | 0 | SQL statement 25 | 0 | SQL statement 26 | 0 | SQL statement 27 | 0 | SQL statement 28 | 0 | SQL statement 29 | 0 | SQL statement 30 | 0 | SQL statement 31 | 1 | assignment 32 | 1 | RETURN (32 rows) drop function covtest; set plpgsql_check.profiler to off; -- test of very long function inside profiler create or replace function longfx(int) returns int as $$ declare s int default 0; j int default 0; r record; begin begin while j < 10 loop for i in 1..1 loop for r in select * from generate_series(1,1) loop s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; s := s + 1; end loop; end loop; j := j + 1; end loop; exception when others then raise 'reraised exception %', sqlerrm; end; return $1; end; $$ language plpgsql; select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('longfx'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------------------------- 1 | | | 2 | | | declare 3 | | | s int default 0; 4 | | | j int default 0; 5 | | | r record; 6 | 6 | | begin 7 | 7 | | begin 8 | 8 | | while j < 10 9 | | | loop 10 | 10 | | for i in 1..1 11 | | | loop 12 | 12 | | for r in select * from generate_series(1,1) 13 | | | loop 14 | 14 | | s := s + 1; 15 | 15 | | s := s + 1; 16 | 16 | | s := s + 1; 17 | 17 | | s := s + 1; 18 | 18 | | s := s + 1; 19 | 19 | | s := s + 1; 20 | 20 | | s := s + 1; 21 | 21 | | s := s + 1; 22 | 22 | | s := s + 1; 23 | 23 | | s := s + 1; 24 | 24 | | s := s + 1; 25 | 25 | | s := s + 1; 26 | 26 | | s := s + 1; 27 | 27 | | s := s + 1; 28 | 28 | | s := s + 1; 29 | 29 | | s := s + 1; 30 | 30 | | s := s + 1; 31 | 31 | | s := s + 1; 32 | 32 | | s := s + 1; 33 | 33 | | s := s + 1; 34 | 34 | | s := s + 1; 35 | 35 | | s := s + 1; 36 | 36 | | s := s + 1; 37 | 37 | | s := s + 1; 38 | 38 | | s := s + 1; 39 | 39 | | s := s + 1; 40 | 40 | | s := s + 1; 41 | 41 | | s := s + 1; 42 | 42 | | s := s + 1; 43 | 43 | | s := s + 1; 44 | 44 | | s := s + 1; 45 | 45 | | s := s + 1; 46 | 46 | | s := s + 1; 47 | 47 | | s := s + 1; 48 | 48 | | s := s + 1; 49 | 49 | | s := s + 1; 50 | 50 | | s := s + 1; 51 | 51 | | s := s + 1; 52 | 52 | | s := s + 1; 53 | 53 | | s := s + 1; 54 | 54 | | s := s + 1; 55 | 55 | | s := s + 1; 56 | 56 | | s := s + 1; 57 | 57 | | s := s + 1; 58 | 58 | | s := s + 1; 59 | 59 | | s := s + 1; 60 | 60 | | s := s + 1; 61 | 61 | | s := s + 1; 62 | 62 | | s := s + 1; 63 | 63 | | s := s + 1; 64 | 64 | | s := s + 1; 65 | 65 | | s := s + 1; 66 | 66 | | s := s + 1; 67 | 67 | | s := s + 1; 68 | 68 | | s := s + 1; 69 | 69 | | s := s + 1; 70 | 70 | | s := s + 1; 71 | 71 | | s := s + 1; 72 | 72 | | s := s + 1; 73 | 73 | | s := s + 1; 74 | 74 | | s := s + 1; 75 | 75 | | s := s + 1; 76 | 76 | | s := s + 1; 77 | 77 | | s := s + 1; 78 | 78 | | s := s + 1; 79 | 79 | | s := s + 1; 80 | 80 | | s := s + 1; 81 | 81 | | s := s + 1; 82 | 82 | | s := s + 1; 83 | 83 | | s := s + 1; 84 | 84 | | s := s + 1; 85 | 85 | | s := s + 1; 86 | 86 | | s := s + 1; 87 | 87 | | s := s + 1; 88 | 88 | | s := s + 1; 89 | 89 | | s := s + 1; 90 | 90 | | s := s + 1; 91 | 91 | | s := s + 1; 92 | 92 | | s := s + 1; 93 | 93 | | s := s + 1; 94 | 94 | | s := s + 1; 95 | 95 | | s := s + 1; 96 | 96 | | s := s + 1; 97 | 97 | | s := s + 1; 98 | 98 | | s := s + 1; 99 | 99 | | s := s + 1; 100 | 100 | | s := s + 1; 101 | 101 | | s := s + 1; 102 | 102 | | s := s + 1; 103 | 103 | | s := s + 1; 104 | 104 | | s := s + 1; 105 | 105 | | s := s + 1; 106 | 106 | | s := s + 1; 107 | 107 | | s := s + 1; 108 | 108 | | s := s + 1; 109 | 109 | | s := s + 1; 110 | 110 | | s := s + 1; 111 | 111 | | s := s + 1; 112 | 112 | | s := s + 1; 113 | 113 | | s := s + 1; 114 | 114 | | s := s + 1; 115 | 115 | | s := s + 1; 116 | 116 | | s := s + 1; 117 | 117 | | s := s + 1; 118 | 118 | | s := s + 1; 119 | 119 | | s := s + 1; 120 | 120 | | s := s + 1; 121 | 121 | | s := s + 1; 122 | 122 | | s := s + 1; 123 | 123 | | s := s + 1; 124 | 124 | | s := s + 1; 125 | 125 | | s := s + 1; 126 | 126 | | s := s + 1; 127 | 127 | | s := s + 1; 128 | 128 | | s := s + 1; 129 | 129 | | s := s + 1; 130 | 130 | | s := s + 1; 131 | 131 | | s := s + 1; 132 | 132 | | s := s + 1; 133 | 133 | | s := s + 1; 134 | 134 | | s := s + 1; 135 | 135 | | s := s + 1; 136 | 136 | | s := s + 1; 137 | 137 | | s := s + 1; 138 | 138 | | s := s + 1; 139 | 139 | | s := s + 1; 140 | 140 | | s := s + 1; 141 | 141 | | s := s + 1; 142 | 142 | | s := s + 1; 143 | 143 | | s := s + 1; 144 | 144 | | s := s + 1; 145 | 145 | | s := s + 1; 146 | 146 | | s := s + 1; 147 | 147 | | s := s + 1; 148 | 148 | | s := s + 1; 149 | 149 | | s := s + 1; 150 | 150 | | s := s + 1; 151 | 151 | | s := s + 1; 152 | 152 | | s := s + 1; 153 | 153 | | s := s + 1; 154 | 154 | | s := s + 1; 155 | 155 | | s := s + 1; 156 | 156 | | s := s + 1; 157 | 157 | | s := s + 1; 158 | 158 | | s := s + 1; 159 | 159 | | s := s + 1; 160 | 160 | | s := s + 1; 161 | 161 | | s := s + 1; 162 | 162 | | s := s + 1; 163 | 163 | | s := s + 1; 164 | 164 | | s := s + 1; 165 | 165 | | s := s + 1; 166 | 166 | | s := s + 1; 167 | 167 | | s := s + 1; 168 | 168 | | s := s + 1; 169 | 169 | | s := s + 1; 170 | 170 | | s := s + 1; 171 | 171 | | s := s + 1; 172 | 172 | | s := s + 1; 173 | 173 | | s := s + 1; 174 | 174 | | s := s + 1; 175 | 175 | | s := s + 1; 176 | 176 | | s := s + 1; 177 | 177 | | s := s + 1; 178 | 178 | | s := s + 1; 179 | 179 | | s := s + 1; 180 | 180 | | s := s + 1; 181 | 181 | | s := s + 1; 182 | 182 | | s := s + 1; 183 | 183 | | s := s + 1; 184 | 184 | | s := s + 1; 185 | 185 | | s := s + 1; 186 | 186 | | s := s + 1; 187 | 187 | | s := s + 1; 188 | 188 | | s := s + 1; 189 | 189 | | s := s + 1; 190 | 190 | | s := s + 1; 191 | 191 | | s := s + 1; 192 | 192 | | s := s + 1; 193 | 193 | | s := s + 1; 194 | 194 | | s := s + 1; 195 | 195 | | s := s + 1; 196 | 196 | | s := s + 1; 197 | 197 | | s := s + 1; 198 | 198 | | s := s + 1; 199 | 199 | | s := s + 1; 200 | 200 | | s := s + 1; 201 | 201 | | s := s + 1; 202 | 202 | | s := s + 1; 203 | 203 | | s := s + 1; 204 | 204 | | s := s + 1; 205 | 205 | | s := s + 1; 206 | 206 | | s := s + 1; 207 | 207 | | s := s + 1; 208 | 208 | | s := s + 1; 209 | 209 | | s := s + 1; 210 | 210 | | s := s + 1; 211 | 211 | | s := s + 1; 212 | 212 | | s := s + 1; 213 | 213 | | s := s + 1; 214 | 214 | | s := s + 1; 215 | 215 | | s := s + 1; 216 | 216 | | s := s + 1; 217 | 217 | | s := s + 1; 218 | 218 | | s := s + 1; 219 | 219 | | s := s + 1; 220 | 220 | | s := s + 1; 221 | 221 | | s := s + 1; 222 | 222 | | s := s + 1; 223 | 223 | | s := s + 1; 224 | 224 | | s := s + 1; 225 | 225 | | s := s + 1; 226 | 226 | | s := s + 1; 227 | 227 | | s := s + 1; 228 | 228 | | s := s + 1; 229 | 229 | | s := s + 1; 230 | 230 | | s := s + 1; 231 | 231 | | s := s + 1; 232 | 232 | | s := s + 1; 233 | 233 | | s := s + 1; 234 | 234 | | s := s + 1; 235 | 235 | | s := s + 1; 236 | 236 | | s := s + 1; 237 | 237 | | s := s + 1; 238 | 238 | | s := s + 1; 239 | 239 | | s := s + 1; 240 | 240 | | s := s + 1; 241 | 241 | | s := s + 1; 242 | 242 | | s := s + 1; 243 | 243 | | s := s + 1; 244 | 244 | | s := s + 1; 245 | 245 | | s := s + 1; 246 | 246 | | s := s + 1; 247 | 247 | | s := s + 1; 248 | 248 | | s := s + 1; 249 | 249 | | s := s + 1; 250 | 250 | | s := s + 1; 251 | 251 | | s := s + 1; 252 | 252 | | s := s + 1; 253 | 253 | | s := s + 1; 254 | 254 | | s := s + 1; 255 | 255 | | s := s + 1; 256 | 256 | | s := s + 1; 257 | 257 | | s := s + 1; 258 | 258 | | s := s + 1; 259 | 259 | | s := s + 1; 260 | 260 | | s := s + 1; 261 | 261 | | s := s + 1; 262 | 262 | | s := s + 1; 263 | 263 | | s := s + 1; 264 | 264 | | s := s + 1; 265 | 265 | | s := s + 1; 266 | 266 | | s := s + 1; 267 | 267 | | s := s + 1; 268 | 268 | | s := s + 1; 269 | 269 | | s := s + 1; 270 | 270 | | s := s + 1; 271 | 271 | | s := s + 1; 272 | 272 | | s := s + 1; 273 | 273 | | s := s + 1; 274 | 274 | | s := s + 1; 275 | 275 | | s := s + 1; 276 | 276 | | s := s + 1; 277 | 277 | | s := s + 1; 278 | 278 | | s := s + 1; 279 | 279 | | s := s + 1; 280 | 280 | | s := s + 1; 281 | 281 | | s := s + 1; 282 | 282 | | s := s + 1; 283 | 283 | | s := s + 1; 284 | 284 | | s := s + 1; 285 | 285 | | s := s + 1; 286 | 286 | | s := s + 1; 287 | 287 | | s := s + 1; 288 | 288 | | s := s + 1; 289 | 289 | | s := s + 1; 290 | 290 | | s := s + 1; 291 | 291 | | s := s + 1; 292 | 292 | | s := s + 1; 293 | 293 | | s := s + 1; 294 | 294 | | s := s + 1; 295 | 295 | | s := s + 1; 296 | 296 | | s := s + 1; 297 | 297 | | s := s + 1; 298 | 298 | | s := s + 1; 299 | 299 | | s := s + 1; 300 | 300 | | s := s + 1; 301 | 301 | | s := s + 1; 302 | 302 | | s := s + 1; 303 | 303 | | s := s + 1; 304 | 304 | | s := s + 1; 305 | 305 | | s := s + 1; 306 | 306 | | s := s + 1; 307 | 307 | | s := s + 1; 308 | 308 | | s := s + 1; 309 | 309 | | s := s + 1; 310 | 310 | | s := s + 1; 311 | 311 | | s := s + 1; 312 | 312 | | s := s + 1; 313 | 313 | | s := s + 1; 314 | 314 | | s := s + 1; 315 | 315 | | s := s + 1; 316 | 316 | | s := s + 1; 317 | 317 | | s := s + 1; 318 | 318 | | s := s + 1; 319 | 319 | | s := s + 1; 320 | 320 | | s := s + 1; 321 | 321 | | s := s + 1; 322 | 322 | | s := s + 1; 323 | 323 | | s := s + 1; 324 | 324 | | s := s + 1; 325 | 325 | | s := s + 1; 326 | 326 | | s := s + 1; 327 | 327 | | s := s + 1; 328 | 328 | | s := s + 1; 329 | 329 | | s := s + 1; 330 | 330 | | s := s + 1; 331 | 331 | | s := s + 1; 332 | 332 | | s := s + 1; 333 | 333 | | s := s + 1; 334 | 334 | | s := s + 1; 335 | 335 | | s := s + 1; 336 | 336 | | s := s + 1; 337 | 337 | | s := s + 1; 338 | 338 | | s := s + 1; 339 | 339 | | s := s + 1; 340 | 340 | | s := s + 1; 341 | 341 | | s := s + 1; 342 | 342 | | s := s + 1; 343 | 343 | | s := s + 1; 344 | 344 | | s := s + 1; 345 | 345 | | s := s + 1; 346 | 346 | | s := s + 1; 347 | 347 | | s := s + 1; 348 | 348 | | s := s + 1; 349 | 349 | | s := s + 1; 350 | 350 | | s := s + 1; 351 | 351 | | s := s + 1; 352 | 352 | | s := s + 1; 353 | 353 | | s := s + 1; 354 | 354 | | s := s + 1; 355 | 355 | | s := s + 1; 356 | 356 | | s := s + 1; 357 | 357 | | s := s + 1; 358 | 358 | | s := s + 1; 359 | 359 | | s := s + 1; 360 | 360 | | s := s + 1; 361 | 361 | | s := s + 1; 362 | 362 | | s := s + 1; 363 | 363 | | s := s + 1; 364 | 364 | | s := s + 1; 365 | 365 | | s := s + 1; 366 | 366 | | s := s + 1; 367 | 367 | | s := s + 1; 368 | 368 | | s := s + 1; 369 | 369 | | s := s + 1; 370 | 370 | | s := s + 1; 371 | 371 | | s := s + 1; 372 | 372 | | s := s + 1; 373 | 373 | | s := s + 1; 374 | 374 | | s := s + 1; 375 | 375 | | s := s + 1; 376 | 376 | | s := s + 1; 377 | 377 | | s := s + 1; 378 | 378 | | s := s + 1; 379 | 379 | | s := s + 1; 380 | 380 | | s := s + 1; 381 | 381 | | s := s + 1; 382 | 382 | | s := s + 1; 383 | 383 | | s := s + 1; 384 | 384 | | s := s + 1; 385 | 385 | | s := s + 1; 386 | 386 | | s := s + 1; 387 | 387 | | s := s + 1; 388 | 388 | | s := s + 1; 389 | 389 | | s := s + 1; 390 | 390 | | s := s + 1; 391 | 391 | | s := s + 1; 392 | 392 | | s := s + 1; 393 | 393 | | s := s + 1; 394 | 394 | | s := s + 1; 395 | 395 | | s := s + 1; 396 | 396 | | s := s + 1; 397 | 397 | | s := s + 1; 398 | 398 | | s := s + 1; 399 | 399 | | s := s + 1; 400 | 400 | | s := s + 1; 401 | 401 | | s := s + 1; 402 | 402 | | s := s + 1; 403 | 403 | | s := s + 1; 404 | 404 | | s := s + 1; 405 | 405 | | s := s + 1; 406 | 406 | | s := s + 1; 407 | 407 | | s := s + 1; 408 | 408 | | s := s + 1; 409 | 409 | | s := s + 1; 410 | 410 | | s := s + 1; 411 | 411 | | s := s + 1; 412 | 412 | | s := s + 1; 413 | 413 | | s := s + 1; 414 | 414 | | s := s + 1; 415 | 415 | | s := s + 1; 416 | 416 | | s := s + 1; 417 | 417 | | s := s + 1; 418 | 418 | | s := s + 1; 419 | 419 | | s := s + 1; 420 | 420 | | s := s + 1; 421 | 421 | | s := s + 1; 422 | 422 | | s := s + 1; 423 | 423 | | s := s + 1; 424 | 424 | | s := s + 1; 425 | 425 | | s := s + 1; 426 | 426 | | s := s + 1; 427 | 427 | | s := s + 1; 428 | 428 | | s := s + 1; 429 | 429 | | s := s + 1; 430 | 430 | | s := s + 1; 431 | 431 | | s := s + 1; 432 | 432 | | s := s + 1; 433 | 433 | | s := s + 1; 434 | 434 | | s := s + 1; 435 | 435 | | s := s + 1; 436 | 436 | | s := s + 1; 437 | 437 | | s := s + 1; 438 | 438 | | s := s + 1; 439 | 439 | | s := s + 1; 440 | 440 | | s := s + 1; 441 | 441 | | s := s + 1; 442 | 442 | | s := s + 1; 443 | 443 | | s := s + 1; 444 | 444 | | s := s + 1; 445 | 445 | | s := s + 1; 446 | 446 | | s := s + 1; 447 | 447 | | s := s + 1; 448 | 448 | | s := s + 1; 449 | 449 | | s := s + 1; 450 | 450 | | s := s + 1; 451 | 451 | | s := s + 1; 452 | 452 | | s := s + 1; 453 | 453 | | s := s + 1; 454 | 454 | | s := s + 1; 455 | 455 | | s := s + 1; 456 | 456 | | s := s + 1; 457 | 457 | | s := s + 1; 458 | 458 | | s := s + 1; 459 | 459 | | s := s + 1; 460 | 460 | | s := s + 1; 461 | 461 | | s := s + 1; 462 | 462 | | s := s + 1; 463 | 463 | | s := s + 1; 464 | 464 | | s := s + 1; 465 | 465 | | s := s + 1; 466 | 466 | | s := s + 1; 467 | 467 | | s := s + 1; 468 | 468 | | s := s + 1; 469 | 469 | | s := s + 1; 470 | 470 | | s := s + 1; 471 | 471 | | s := s + 1; 472 | 472 | | s := s + 1; 473 | 473 | | s := s + 1; 474 | 474 | | s := s + 1; 475 | 475 | | s := s + 1; 476 | 476 | | s := s + 1; 477 | 477 | | s := s + 1; 478 | 478 | | s := s + 1; 479 | 479 | | s := s + 1; 480 | 480 | | s := s + 1; 481 | 481 | | s := s + 1; 482 | 482 | | s := s + 1; 483 | 483 | | s := s + 1; 484 | 484 | | s := s + 1; 485 | 485 | | s := s + 1; 486 | 486 | | s := s + 1; 487 | 487 | | s := s + 1; 488 | 488 | | s := s + 1; 489 | 489 | | s := s + 1; 490 | 490 | | s := s + 1; 491 | 491 | | s := s + 1; 492 | 492 | | s := s + 1; 493 | 493 | | s := s + 1; 494 | 494 | | s := s + 1; 495 | 495 | | s := s + 1; 496 | 496 | | s := s + 1; 497 | 497 | | s := s + 1; 498 | 498 | | s := s + 1; 499 | 499 | | s := s + 1; 500 | 500 | | s := s + 1; 501 | 501 | | s := s + 1; 502 | 502 | | s := s + 1; 503 | 503 | | s := s + 1; 504 | 504 | | s := s + 1; 505 | 505 | | s := s + 1; 506 | 506 | | s := s + 1; 507 | 507 | | s := s + 1; 508 | 508 | | s := s + 1; 509 | 509 | | s := s + 1; 510 | 510 | | s := s + 1; 511 | 511 | | s := s + 1; 512 | 512 | | s := s + 1; 513 | 513 | | s := s + 1; 514 | 514 | | s := s + 1; 515 | 515 | | s := s + 1; 516 | 516 | | s := s + 1; 517 | 517 | | s := s + 1; 518 | 518 | | s := s + 1; 519 | 519 | | s := s + 1; 520 | 520 | | s := s + 1; 521 | 521 | | s := s + 1; 522 | 522 | | s := s + 1; 523 | 523 | | s := s + 1; 524 | 524 | | s := s + 1; 525 | 525 | | s := s + 1; 526 | 526 | | s := s + 1; 527 | 527 | | s := s + 1; 528 | 528 | | s := s + 1; 529 | 529 | | s := s + 1; 530 | 530 | | s := s + 1; 531 | 531 | | s := s + 1; 532 | 532 | | s := s + 1; 533 | 533 | | s := s + 1; 534 | 534 | | s := s + 1; 535 | 535 | | s := s + 1; 536 | 536 | | s := s + 1; 537 | 537 | | s := s + 1; 538 | 538 | | s := s + 1; 539 | 539 | | s := s + 1; 540 | 540 | | s := s + 1; 541 | 541 | | s := s + 1; 542 | 542 | | s := s + 1; 543 | 543 | | s := s + 1; 544 | 544 | | s := s + 1; 545 | 545 | | s := s + 1; 546 | 546 | | s := s + 1; 547 | 547 | | s := s + 1; 548 | 548 | | s := s + 1; 549 | 549 | | s := s + 1; 550 | 550 | | s := s + 1; 551 | 551 | | s := s + 1; 552 | 552 | | s := s + 1; 553 | 553 | | s := s + 1; 554 | 554 | | s := s + 1; 555 | 555 | | s := s + 1; 556 | 556 | | s := s + 1; 557 | 557 | | s := s + 1; 558 | 558 | | s := s + 1; 559 | 559 | | s := s + 1; 560 | 560 | | s := s + 1; 561 | 561 | | s := s + 1; 562 | 562 | | s := s + 1; 563 | 563 | | s := s + 1; 564 | 564 | | s := s + 1; 565 | 565 | | s := s + 1; 566 | 566 | | s := s + 1; 567 | 567 | | s := s + 1; 568 | 568 | | s := s + 1; 569 | 569 | | s := s + 1; 570 | 570 | | s := s + 1; 571 | 571 | | s := s + 1; 572 | 572 | | s := s + 1; 573 | 573 | | s := s + 1; 574 | 574 | | s := s + 1; 575 | 575 | | s := s + 1; 576 | 576 | | s := s + 1; 577 | 577 | | s := s + 1; 578 | 578 | | s := s + 1; 579 | 579 | | s := s + 1; 580 | 580 | | s := s + 1; 581 | 581 | | s := s + 1; 582 | 582 | | s := s + 1; 583 | 583 | | s := s + 1; 584 | 584 | | s := s + 1; 585 | 585 | | s := s + 1; 586 | 586 | | s := s + 1; 587 | 587 | | s := s + 1; 588 | 588 | | s := s + 1; 589 | 589 | | s := s + 1; 590 | 590 | | s := s + 1; 591 | 591 | | s := s + 1; 592 | 592 | | s := s + 1; 593 | 593 | | s := s + 1; 594 | 594 | | s := s + 1; 595 | 595 | | s := s + 1; 596 | 596 | | s := s + 1; 597 | 597 | | s := s + 1; 598 | 598 | | s := s + 1; 599 | 599 | | s := s + 1; 600 | 600 | | s := s + 1; 601 | 601 | | s := s + 1; 602 | 602 | | s := s + 1; 603 | 603 | | s := s + 1; 604 | 604 | | s := s + 1; 605 | 605 | | s := s + 1; 606 | 606 | | s := s + 1; 607 | 607 | | s := s + 1; 608 | 608 | | s := s + 1; 609 | 609 | | s := s + 1; 610 | 610 | | s := s + 1; 611 | 611 | | s := s + 1; 612 | 612 | | s := s + 1; 613 | 613 | | s := s + 1; 614 | 614 | | s := s + 1; 615 | 615 | | s := s + 1; 616 | 616 | | s := s + 1; 617 | 617 | | s := s + 1; 618 | 618 | | s := s + 1; 619 | 619 | | s := s + 1; 620 | 620 | | s := s + 1; 621 | 621 | | s := s + 1; 622 | 622 | | s := s + 1; 623 | 623 | | s := s + 1; 624 | 624 | | s := s + 1; 625 | 625 | | s := s + 1; 626 | 626 | | s := s + 1; 627 | 627 | | s := s + 1; 628 | 628 | | s := s + 1; 629 | 629 | | s := s + 1; 630 | 630 | | s := s + 1; 631 | 631 | | s := s + 1; 632 | 632 | | s := s + 1; 633 | 633 | | s := s + 1; 634 | 634 | | s := s + 1; 635 | 635 | | s := s + 1; 636 | 636 | | s := s + 1; 637 | 637 | | s := s + 1; 638 | 638 | | s := s + 1; 639 | 639 | | s := s + 1; 640 | 640 | | s := s + 1; 641 | 641 | | s := s + 1; 642 | 642 | | s := s + 1; 643 | 643 | | s := s + 1; 644 | 644 | | s := s + 1; 645 | 645 | | s := s + 1; 646 | 646 | | s := s + 1; 647 | 647 | | s := s + 1; 648 | 648 | | s := s + 1; 649 | 649 | | s := s + 1; 650 | 650 | | s := s + 1; 651 | 651 | | s := s + 1; 652 | 652 | | s := s + 1; 653 | 653 | | s := s + 1; 654 | 654 | | s := s + 1; 655 | 655 | | s := s + 1; 656 | 656 | | s := s + 1; 657 | 657 | | s := s + 1; 658 | 658 | | s := s + 1; 659 | 659 | | s := s + 1; 660 | 660 | | s := s + 1; 661 | 661 | | s := s + 1; 662 | 662 | | s := s + 1; 663 | 663 | | s := s + 1; 664 | 664 | | s := s + 1; 665 | 665 | | s := s + 1; 666 | 666 | | s := s + 1; 667 | 667 | | s := s + 1; 668 | 668 | | s := s + 1; 669 | 669 | | s := s + 1; 670 | 670 | | s := s + 1; 671 | 671 | | s := s + 1; 672 | 672 | | s := s + 1; 673 | 673 | | s := s + 1; 674 | 674 | | s := s + 1; 675 | 675 | | s := s + 1; 676 | 676 | | s := s + 1; 677 | 677 | | s := s + 1; 678 | 678 | | s := s + 1; 679 | 679 | | s := s + 1; 680 | 680 | | s := s + 1; 681 | 681 | | s := s + 1; 682 | 682 | | s := s + 1; 683 | 683 | | s := s + 1; 684 | 684 | | s := s + 1; 685 | 685 | | s := s + 1; 686 | 686 | | s := s + 1; 687 | 687 | | s := s + 1; 688 | 688 | | s := s + 1; 689 | 689 | | s := s + 1; 690 | 690 | | s := s + 1; 691 | 691 | | s := s + 1; 692 | 692 | | s := s + 1; 693 | 693 | | s := s + 1; 694 | 694 | | s := s + 1; 695 | 695 | | s := s + 1; 696 | 696 | | s := s + 1; 697 | 697 | | s := s + 1; 698 | 698 | | s := s + 1; 699 | 699 | | s := s + 1; 700 | 700 | | s := s + 1; 701 | 701 | | s := s + 1; 702 | 702 | | s := s + 1; 703 | 703 | | s := s + 1; 704 | 704 | | s := s + 1; 705 | 705 | | s := s + 1; 706 | 706 | | s := s + 1; 707 | 707 | | s := s + 1; 708 | 708 | | s := s + 1; 709 | 709 | | s := s + 1; 710 | 710 | | s := s + 1; 711 | 711 | | s := s + 1; 712 | 712 | | s := s + 1; 713 | 713 | | s := s + 1; 714 | 714 | | s := s + 1; 715 | 715 | | s := s + 1; 716 | 716 | | s := s + 1; 717 | 717 | | s := s + 1; 718 | 718 | | s := s + 1; 719 | 719 | | s := s + 1; 720 | 720 | | s := s + 1; 721 | 721 | | s := s + 1; 722 | 722 | | s := s + 1; 723 | 723 | | s := s + 1; 724 | 724 | | s := s + 1; 725 | 725 | | s := s + 1; 726 | 726 | | s := s + 1; 727 | 727 | | s := s + 1; 728 | 728 | | s := s + 1; 729 | 729 | | s := s + 1; 730 | 730 | | s := s + 1; 731 | 731 | | s := s + 1; 732 | 732 | | s := s + 1; 733 | 733 | | s := s + 1; 734 | 734 | | s := s + 1; 735 | 735 | | s := s + 1; 736 | 736 | | s := s + 1; 737 | 737 | | s := s + 1; 738 | 738 | | s := s + 1; 739 | 739 | | s := s + 1; 740 | 740 | | s := s + 1; 741 | 741 | | s := s + 1; 742 | 742 | | s := s + 1; 743 | 743 | | s := s + 1; 744 | 744 | | s := s + 1; 745 | 745 | | s := s + 1; 746 | 746 | | s := s + 1; 747 | 747 | | s := s + 1; 748 | 748 | | s := s + 1; 749 | 749 | | s := s + 1; 750 | 750 | | s := s + 1; 751 | 751 | | s := s + 1; 752 | 752 | | s := s + 1; 753 | 753 | | s := s + 1; 754 | 754 | | s := s + 1; 755 | 755 | | s := s + 1; 756 | 756 | | s := s + 1; 757 | 757 | | s := s + 1; 758 | 758 | | s := s + 1; 759 | 759 | | s := s + 1; 760 | 760 | | s := s + 1; 761 | 761 | | s := s + 1; 762 | 762 | | s := s + 1; 763 | 763 | | s := s + 1; 764 | 764 | | s := s + 1; 765 | 765 | | s := s + 1; 766 | 766 | | s := s + 1; 767 | 767 | | s := s + 1; 768 | 768 | | s := s + 1; 769 | 769 | | s := s + 1; 770 | 770 | | s := s + 1; 771 | 771 | | s := s + 1; 772 | 772 | | s := s + 1; 773 | 773 | | s := s + 1; 774 | 774 | | s := s + 1; 775 | 775 | | s := s + 1; 776 | 776 | | s := s + 1; 777 | 777 | | s := s + 1; 778 | 778 | | s := s + 1; 779 | 779 | | s := s + 1; 780 | 780 | | s := s + 1; 781 | 781 | | s := s + 1; 782 | 782 | | s := s + 1; 783 | 783 | | s := s + 1; 784 | 784 | | s := s + 1; 785 | 785 | | s := s + 1; 786 | 786 | | s := s + 1; 787 | 787 | | s := s + 1; 788 | 788 | | s := s + 1; 789 | 789 | | s := s + 1; 790 | 790 | | s := s + 1; 791 | 791 | | s := s + 1; 792 | 792 | | s := s + 1; 793 | 793 | | s := s + 1; 794 | 794 | | s := s + 1; 795 | 795 | | s := s + 1; 796 | 796 | | s := s + 1; 797 | 797 | | s := s + 1; 798 | 798 | | s := s + 1; 799 | 799 | | s := s + 1; 800 | 800 | | s := s + 1; 801 | 801 | | s := s + 1; 802 | 802 | | s := s + 1; 803 | 803 | | s := s + 1; 804 | 804 | | s := s + 1; 805 | 805 | | s := s + 1; 806 | 806 | | s := s + 1; 807 | 807 | | s := s + 1; 808 | 808 | | s := s + 1; 809 | 809 | | s := s + 1; 810 | 810 | | s := s + 1; 811 | 811 | | s := s + 1; 812 | 812 | | s := s + 1; 813 | 813 | | s := s + 1; 814 | 814 | | s := s + 1; 815 | 815 | | s := s + 1; 816 | 816 | | s := s + 1; 817 | 817 | | s := s + 1; 818 | 818 | | s := s + 1; 819 | 819 | | s := s + 1; 820 | 820 | | s := s + 1; 821 | 821 | | s := s + 1; 822 | 822 | | s := s + 1; 823 | 823 | | s := s + 1; 824 | 824 | | s := s + 1; 825 | 825 | | s := s + 1; 826 | 826 | | s := s + 1; 827 | 827 | | s := s + 1; 828 | 828 | | s := s + 1; 829 | 829 | | s := s + 1; 830 | 830 | | s := s + 1; 831 | 831 | | s := s + 1; 832 | 832 | | s := s + 1; 833 | 833 | | s := s + 1; 834 | 834 | | s := s + 1; 835 | 835 | | s := s + 1; 836 | 836 | | s := s + 1; 837 | 837 | | s := s + 1; 838 | 838 | | s := s + 1; 839 | 839 | | s := s + 1; 840 | 840 | | s := s + 1; 841 | 841 | | s := s + 1; 842 | 842 | | s := s + 1; 843 | 843 | | s := s + 1; 844 | 844 | | s := s + 1; 845 | 845 | | s := s + 1; 846 | 846 | | s := s + 1; 847 | 847 | | s := s + 1; 848 | 848 | | s := s + 1; 849 | 849 | | s := s + 1; 850 | 850 | | s := s + 1; 851 | 851 | | s := s + 1; 852 | 852 | | s := s + 1; 853 | 853 | | s := s + 1; 854 | 854 | | s := s + 1; 855 | 855 | | s := s + 1; 856 | 856 | | s := s + 1; 857 | 857 | | s := s + 1; 858 | 858 | | s := s + 1; 859 | 859 | | s := s + 1; 860 | 860 | | s := s + 1; 861 | 861 | | s := s + 1; 862 | 862 | | s := s + 1; 863 | 863 | | s := s + 1; 864 | 864 | | s := s + 1; 865 | 865 | | s := s + 1; 866 | 866 | | s := s + 1; 867 | 867 | | s := s + 1; 868 | 868 | | s := s + 1; 869 | 869 | | s := s + 1; 870 | 870 | | s := s + 1; 871 | 871 | | s := s + 1; 872 | 872 | | s := s + 1; 873 | 873 | | s := s + 1; 874 | 874 | | s := s + 1; 875 | 875 | | s := s + 1; 876 | 876 | | s := s + 1; 877 | 877 | | s := s + 1; 878 | 878 | | s := s + 1; 879 | 879 | | s := s + 1; 880 | 880 | | s := s + 1; 881 | 881 | | s := s + 1; 882 | 882 | | s := s + 1; 883 | 883 | | s := s + 1; 884 | 884 | | s := s + 1; 885 | 885 | | s := s + 1; 886 | 886 | | s := s + 1; 887 | 887 | | s := s + 1; 888 | 888 | | s := s + 1; 889 | 889 | | s := s + 1; 890 | 890 | | s := s + 1; 891 | 891 | | s := s + 1; 892 | 892 | | s := s + 1; 893 | 893 | | s := s + 1; 894 | 894 | | s := s + 1; 895 | 895 | | s := s + 1; 896 | 896 | | s := s + 1; 897 | 897 | | s := s + 1; 898 | 898 | | s := s + 1; 899 | 899 | | s := s + 1; 900 | 900 | | s := s + 1; 901 | 901 | | s := s + 1; 902 | 902 | | s := s + 1; 903 | 903 | | s := s + 1; 904 | 904 | | s := s + 1; 905 | 905 | | s := s + 1; 906 | 906 | | s := s + 1; 907 | 907 | | s := s + 1; 908 | 908 | | s := s + 1; 909 | 909 | | s := s + 1; 910 | 910 | | s := s + 1; 911 | 911 | | s := s + 1; 912 | 912 | | s := s + 1; 913 | 913 | | s := s + 1; 914 | 914 | | s := s + 1; 915 | 915 | | s := s + 1; 916 | 916 | | s := s + 1; 917 | 917 | | s := s + 1; 918 | 918 | | s := s + 1; 919 | 919 | | s := s + 1; 920 | 920 | | s := s + 1; 921 | 921 | | s := s + 1; 922 | 922 | | s := s + 1; 923 | 923 | | s := s + 1; 924 | 924 | | s := s + 1; 925 | 925 | | s := s + 1; 926 | 926 | | s := s + 1; 927 | 927 | | s := s + 1; 928 | 928 | | s := s + 1; 929 | 929 | | s := s + 1; 930 | 930 | | s := s + 1; 931 | 931 | | s := s + 1; 932 | 932 | | s := s + 1; 933 | 933 | | s := s + 1; 934 | 934 | | s := s + 1; 935 | 935 | | s := s + 1; 936 | 936 | | s := s + 1; 937 | 937 | | s := s + 1; 938 | 938 | | s := s + 1; 939 | 939 | | s := s + 1; 940 | 940 | | s := s + 1; 941 | 941 | | s := s + 1; 942 | 942 | | s := s + 1; 943 | 943 | | s := s + 1; 944 | 944 | | s := s + 1; 945 | 945 | | s := s + 1; 946 | 946 | | s := s + 1; 947 | 947 | | s := s + 1; 948 | 948 | | s := s + 1; 949 | 949 | | s := s + 1; 950 | 950 | | s := s + 1; 951 | 951 | | s := s + 1; 952 | 952 | | s := s + 1; 953 | 953 | | s := s + 1; 954 | 954 | | s := s + 1; 955 | 955 | | s := s + 1; 956 | 956 | | s := s + 1; 957 | 957 | | s := s + 1; 958 | 958 | | s := s + 1; 959 | 959 | | s := s + 1; 960 | 960 | | s := s + 1; 961 | 961 | | s := s + 1; 962 | 962 | | s := s + 1; 963 | 963 | | s := s + 1; 964 | 964 | | s := s + 1; 965 | 965 | | s := s + 1; 966 | 966 | | s := s + 1; 967 | 967 | | s := s + 1; 968 | 968 | | s := s + 1; 969 | 969 | | s := s + 1; 970 | 970 | | s := s + 1; 971 | 971 | | s := s + 1; 972 | 972 | | s := s + 1; 973 | 973 | | s := s + 1; 974 | 974 | | s := s + 1; 975 | 975 | | s := s + 1; 976 | 976 | | s := s + 1; 977 | 977 | | s := s + 1; 978 | 978 | | s := s + 1; 979 | 979 | | s := s + 1; 980 | 980 | | s := s + 1; 981 | 981 | | s := s + 1; 982 | 982 | | s := s + 1; 983 | 983 | | s := s + 1; 984 | 984 | | s := s + 1; 985 | 985 | | s := s + 1; 986 | 986 | | s := s + 1; 987 | 987 | | s := s + 1; 988 | 988 | | s := s + 1; 989 | 989 | | s := s + 1; 990 | 990 | | s := s + 1; 991 | 991 | | s := s + 1; 992 | 992 | | s := s + 1; 993 | 993 | | s := s + 1; 994 | 994 | | s := s + 1; 995 | 995 | | s := s + 1; 996 | 996 | | s := s + 1; 997 | 997 | | s := s + 1; 998 | 998 | | s := s + 1; 999 | 999 | | s := s + 1; 1000 | 1000 | | s := s + 1; 1001 | 1001 | | s := s + 1; 1002 | 1002 | | s := s + 1; 1003 | 1003 | | s := s + 1; 1004 | 1004 | | s := s + 1; 1005 | 1005 | | s := s + 1; 1006 | 1006 | | s := s + 1; 1007 | 1007 | | s := s + 1; 1008 | 1008 | | s := s + 1; 1009 | 1009 | | s := s + 1; 1010 | 1010 | | s := s + 1; 1011 | 1011 | | s := s + 1; 1012 | 1012 | | s := s + 1; 1013 | 1013 | | s := s + 1; 1014 | 1014 | | s := s + 1; 1015 | 1015 | | s := s + 1; 1016 | 1016 | | s := s + 1; 1017 | 1017 | | s := s + 1; 1018 | 1018 | | s := s + 1; 1019 | 1019 | | s := s + 1; 1020 | 1020 | | s := s + 1; 1021 | 1021 | | s := s + 1; 1022 | 1022 | | s := s + 1; 1023 | 1023 | | s := s + 1; 1024 | 1024 | | s := s + 1; 1025 | 1025 | | s := s + 1; 1026 | 1026 | | s := s + 1; 1027 | 1027 | | s := s + 1; 1028 | 1028 | | s := s + 1; 1029 | 1029 | | s := s + 1; 1030 | 1030 | | s := s + 1; 1031 | 1031 | | s := s + 1; 1032 | 1032 | | s := s + 1; 1033 | 1033 | | s := s + 1; 1034 | 1034 | | s := s + 1; 1035 | 1035 | | s := s + 1; 1036 | 1036 | | s := s + 1; 1037 | 1037 | | s := s + 1; 1038 | | | end loop; 1039 | | | end loop; 1040 | 1040 | | j := j + 1; 1041 | | | end loop; 1042 | | | exception when others then 1043 | 1043 | | raise 'reraised exception %', sqlerrm; 1044 | | | end; 1045 | 1045 | | return $1; 1046 | | | end; (1046 rows) set plpgsql_check.profiler = on; select longfx(10); longfx -------- 10 (1 row) select longfx(10); longfx -------- 10 (1 row) set plpgsql_check.profiler = off; select longfx(10); longfx -------- 10 (1 row) select lineno, stmt_lineno, exec_stmts, source from plpgsql_profiler_function_tb('longfx'); lineno | stmt_lineno | exec_stmts | source --------+-------------+------------+----------------------------------------------------- 1 | | | 2 | | | declare 3 | | | s int default 0; 4 | | | j int default 0; 5 | | | r record; 6 | 6 | {2} | begin 7 | 7 | {2} | begin 8 | 8 | {2} | while j < 10 9 | | | loop 10 | 10 | {20} | for i in 1..1 11 | | | loop 12 | 12 | {20} | for r in select * from generate_series(1,1) 13 | | | loop 14 | 14 | {20} | s := s + 1; 15 | 15 | {20} | s := s + 1; 16 | 16 | {20} | s := s + 1; 17 | 17 | {20} | s := s + 1; 18 | 18 | {20} | s := s + 1; 19 | 19 | {20} | s := s + 1; 20 | 20 | {20} | s := s + 1; 21 | 21 | {20} | s := s + 1; 22 | 22 | {20} | s := s + 1; 23 | 23 | {20} | s := s + 1; 24 | 24 | {20} | s := s + 1; 25 | 25 | {20} | s := s + 1; 26 | 26 | {20} | s := s + 1; 27 | 27 | {20} | s := s + 1; 28 | 28 | {20} | s := s + 1; 29 | 29 | {20} | s := s + 1; 30 | 30 | {20} | s := s + 1; 31 | 31 | {20} | s := s + 1; 32 | 32 | {20} | s := s + 1; 33 | 33 | {20} | s := s + 1; 34 | 34 | {20} | s := s + 1; 35 | 35 | {20} | s := s + 1; 36 | 36 | {20} | s := s + 1; 37 | 37 | {20} | s := s + 1; 38 | 38 | {20} | s := s + 1; 39 | 39 | {20} | s := s + 1; 40 | 40 | {20} | s := s + 1; 41 | 41 | {20} | s := s + 1; 42 | 42 | {20} | s := s + 1; 43 | 43 | {20} | s := s + 1; 44 | 44 | {20} | s := s + 1; 45 | 45 | {20} | s := s + 1; 46 | 46 | {20} | s := s + 1; 47 | 47 | {20} | s := s + 1; 48 | 48 | {20} | s := s + 1; 49 | 49 | {20} | s := s + 1; 50 | 50 | {20} | s := s + 1; 51 | 51 | {20} | s := s + 1; 52 | 52 | {20} | s := s + 1; 53 | 53 | {20} | s := s + 1; 54 | 54 | {20} | s := s + 1; 55 | 55 | {20} | s := s + 1; 56 | 56 | {20} | s := s + 1; 57 | 57 | {20} | s := s + 1; 58 | 58 | {20} | s := s + 1; 59 | 59 | {20} | s := s + 1; 60 | 60 | {20} | s := s + 1; 61 | 61 | {20} | s := s + 1; 62 | 62 | {20} | s := s + 1; 63 | 63 | {20} | s := s + 1; 64 | 64 | {20} | s := s + 1; 65 | 65 | {20} | s := s + 1; 66 | 66 | {20} | s := s + 1; 67 | 67 | {20} | s := s + 1; 68 | 68 | {20} | s := s + 1; 69 | 69 | {20} | s := s + 1; 70 | 70 | {20} | s := s + 1; 71 | 71 | {20} | s := s + 1; 72 | 72 | {20} | s := s + 1; 73 | 73 | {20} | s := s + 1; 74 | 74 | {20} | s := s + 1; 75 | 75 | {20} | s := s + 1; 76 | 76 | {20} | s := s + 1; 77 | 77 | {20} | s := s + 1; 78 | 78 | {20} | s := s + 1; 79 | 79 | {20} | s := s + 1; 80 | 80 | {20} | s := s + 1; 81 | 81 | {20} | s := s + 1; 82 | 82 | {20} | s := s + 1; 83 | 83 | {20} | s := s + 1; 84 | 84 | {20} | s := s + 1; 85 | 85 | {20} | s := s + 1; 86 | 86 | {20} | s := s + 1; 87 | 87 | {20} | s := s + 1; 88 | 88 | {20} | s := s + 1; 89 | 89 | {20} | s := s + 1; 90 | 90 | {20} | s := s + 1; 91 | 91 | {20} | s := s + 1; 92 | 92 | {20} | s := s + 1; 93 | 93 | {20} | s := s + 1; 94 | 94 | {20} | s := s + 1; 95 | 95 | {20} | s := s + 1; 96 | 96 | {20} | s := s + 1; 97 | 97 | {20} | s := s + 1; 98 | 98 | {20} | s := s + 1; 99 | 99 | {20} | s := s + 1; 100 | 100 | {20} | s := s + 1; 101 | 101 | {20} | s := s + 1; 102 | 102 | {20} | s := s + 1; 103 | 103 | {20} | s := s + 1; 104 | 104 | {20} | s := s + 1; 105 | 105 | {20} | s := s + 1; 106 | 106 | {20} | s := s + 1; 107 | 107 | {20} | s := s + 1; 108 | 108 | {20} | s := s + 1; 109 | 109 | {20} | s := s + 1; 110 | 110 | {20} | s := s + 1; 111 | 111 | {20} | s := s + 1; 112 | 112 | {20} | s := s + 1; 113 | 113 | {20} | s := s + 1; 114 | 114 | {20} | s := s + 1; 115 | 115 | {20} | s := s + 1; 116 | 116 | {20} | s := s + 1; 117 | 117 | {20} | s := s + 1; 118 | 118 | {20} | s := s + 1; 119 | 119 | {20} | s := s + 1; 120 | 120 | {20} | s := s + 1; 121 | 121 | {20} | s := s + 1; 122 | 122 | {20} | s := s + 1; 123 | 123 | {20} | s := s + 1; 124 | 124 | {20} | s := s + 1; 125 | 125 | {20} | s := s + 1; 126 | 126 | {20} | s := s + 1; 127 | 127 | {20} | s := s + 1; 128 | 128 | {20} | s := s + 1; 129 | 129 | {20} | s := s + 1; 130 | 130 | {20} | s := s + 1; 131 | 131 | {20} | s := s + 1; 132 | 132 | {20} | s := s + 1; 133 | 133 | {20} | s := s + 1; 134 | 134 | {20} | s := s + 1; 135 | 135 | {20} | s := s + 1; 136 | 136 | {20} | s := s + 1; 137 | 137 | {20} | s := s + 1; 138 | 138 | {20} | s := s + 1; 139 | 139 | {20} | s := s + 1; 140 | 140 | {20} | s := s + 1; 141 | 141 | {20} | s := s + 1; 142 | 142 | {20} | s := s + 1; 143 | 143 | {20} | s := s + 1; 144 | 144 | {20} | s := s + 1; 145 | 145 | {20} | s := s + 1; 146 | 146 | {20} | s := s + 1; 147 | 147 | {20} | s := s + 1; 148 | 148 | {20} | s := s + 1; 149 | 149 | {20} | s := s + 1; 150 | 150 | {20} | s := s + 1; 151 | 151 | {20} | s := s + 1; 152 | 152 | {20} | s := s + 1; 153 | 153 | {20} | s := s + 1; 154 | 154 | {20} | s := s + 1; 155 | 155 | {20} | s := s + 1; 156 | 156 | {20} | s := s + 1; 157 | 157 | {20} | s := s + 1; 158 | 158 | {20} | s := s + 1; 159 | 159 | {20} | s := s + 1; 160 | 160 | {20} | s := s + 1; 161 | 161 | {20} | s := s + 1; 162 | 162 | {20} | s := s + 1; 163 | 163 | {20} | s := s + 1; 164 | 164 | {20} | s := s + 1; 165 | 165 | {20} | s := s + 1; 166 | 166 | {20} | s := s + 1; 167 | 167 | {20} | s := s + 1; 168 | 168 | {20} | s := s + 1; 169 | 169 | {20} | s := s + 1; 170 | 170 | {20} | s := s + 1; 171 | 171 | {20} | s := s + 1; 172 | 172 | {20} | s := s + 1; 173 | 173 | {20} | s := s + 1; 174 | 174 | {20} | s := s + 1; 175 | 175 | {20} | s := s + 1; 176 | 176 | {20} | s := s + 1; 177 | 177 | {20} | s := s + 1; 178 | 178 | {20} | s := s + 1; 179 | 179 | {20} | s := s + 1; 180 | 180 | {20} | s := s + 1; 181 | 181 | {20} | s := s + 1; 182 | 182 | {20} | s := s + 1; 183 | 183 | {20} | s := s + 1; 184 | 184 | {20} | s := s + 1; 185 | 185 | {20} | s := s + 1; 186 | 186 | {20} | s := s + 1; 187 | 187 | {20} | s := s + 1; 188 | 188 | {20} | s := s + 1; 189 | 189 | {20} | s := s + 1; 190 | 190 | {20} | s := s + 1; 191 | 191 | {20} | s := s + 1; 192 | 192 | {20} | s := s + 1; 193 | 193 | {20} | s := s + 1; 194 | 194 | {20} | s := s + 1; 195 | 195 | {20} | s := s + 1; 196 | 196 | {20} | s := s + 1; 197 | 197 | {20} | s := s + 1; 198 | 198 | {20} | s := s + 1; 199 | 199 | {20} | s := s + 1; 200 | 200 | {20} | s := s + 1; 201 | 201 | {20} | s := s + 1; 202 | 202 | {20} | s := s + 1; 203 | 203 | {20} | s := s + 1; 204 | 204 | {20} | s := s + 1; 205 | 205 | {20} | s := s + 1; 206 | 206 | {20} | s := s + 1; 207 | 207 | {20} | s := s + 1; 208 | 208 | {20} | s := s + 1; 209 | 209 | {20} | s := s + 1; 210 | 210 | {20} | s := s + 1; 211 | 211 | {20} | s := s + 1; 212 | 212 | {20} | s := s + 1; 213 | 213 | {20} | s := s + 1; 214 | 214 | {20} | s := s + 1; 215 | 215 | {20} | s := s + 1; 216 | 216 | {20} | s := s + 1; 217 | 217 | {20} | s := s + 1; 218 | 218 | {20} | s := s + 1; 219 | 219 | {20} | s := s + 1; 220 | 220 | {20} | s := s + 1; 221 | 221 | {20} | s := s + 1; 222 | 222 | {20} | s := s + 1; 223 | 223 | {20} | s := s + 1; 224 | 224 | {20} | s := s + 1; 225 | 225 | {20} | s := s + 1; 226 | 226 | {20} | s := s + 1; 227 | 227 | {20} | s := s + 1; 228 | 228 | {20} | s := s + 1; 229 | 229 | {20} | s := s + 1; 230 | 230 | {20} | s := s + 1; 231 | 231 | {20} | s := s + 1; 232 | 232 | {20} | s := s + 1; 233 | 233 | {20} | s := s + 1; 234 | 234 | {20} | s := s + 1; 235 | 235 | {20} | s := s + 1; 236 | 236 | {20} | s := s + 1; 237 | 237 | {20} | s := s + 1; 238 | 238 | {20} | s := s + 1; 239 | 239 | {20} | s := s + 1; 240 | 240 | {20} | s := s + 1; 241 | 241 | {20} | s := s + 1; 242 | 242 | {20} | s := s + 1; 243 | 243 | {20} | s := s + 1; 244 | 244 | {20} | s := s + 1; 245 | 245 | {20} | s := s + 1; 246 | 246 | {20} | s := s + 1; 247 | 247 | {20} | s := s + 1; 248 | 248 | {20} | s := s + 1; 249 | 249 | {20} | s := s + 1; 250 | 250 | {20} | s := s + 1; 251 | 251 | {20} | s := s + 1; 252 | 252 | {20} | s := s + 1; 253 | 253 | {20} | s := s + 1; 254 | 254 | {20} | s := s + 1; 255 | 255 | {20} | s := s + 1; 256 | 256 | {20} | s := s + 1; 257 | 257 | {20} | s := s + 1; 258 | 258 | {20} | s := s + 1; 259 | 259 | {20} | s := s + 1; 260 | 260 | {20} | s := s + 1; 261 | 261 | {20} | s := s + 1; 262 | 262 | {20} | s := s + 1; 263 | 263 | {20} | s := s + 1; 264 | 264 | {20} | s := s + 1; 265 | 265 | {20} | s := s + 1; 266 | 266 | {20} | s := s + 1; 267 | 267 | {20} | s := s + 1; 268 | 268 | {20} | s := s + 1; 269 | 269 | {20} | s := s + 1; 270 | 270 | {20} | s := s + 1; 271 | 271 | {20} | s := s + 1; 272 | 272 | {20} | s := s + 1; 273 | 273 | {20} | s := s + 1; 274 | 274 | {20} | s := s + 1; 275 | 275 | {20} | s := s + 1; 276 | 276 | {20} | s := s + 1; 277 | 277 | {20} | s := s + 1; 278 | 278 | {20} | s := s + 1; 279 | 279 | {20} | s := s + 1; 280 | 280 | {20} | s := s + 1; 281 | 281 | {20} | s := s + 1; 282 | 282 | {20} | s := s + 1; 283 | 283 | {20} | s := s + 1; 284 | 284 | {20} | s := s + 1; 285 | 285 | {20} | s := s + 1; 286 | 286 | {20} | s := s + 1; 287 | 287 | {20} | s := s + 1; 288 | 288 | {20} | s := s + 1; 289 | 289 | {20} | s := s + 1; 290 | 290 | {20} | s := s + 1; 291 | 291 | {20} | s := s + 1; 292 | 292 | {20} | s := s + 1; 293 | 293 | {20} | s := s + 1; 294 | 294 | {20} | s := s + 1; 295 | 295 | {20} | s := s + 1; 296 | 296 | {20} | s := s + 1; 297 | 297 | {20} | s := s + 1; 298 | 298 | {20} | s := s + 1; 299 | 299 | {20} | s := s + 1; 300 | 300 | {20} | s := s + 1; 301 | 301 | {20} | s := s + 1; 302 | 302 | {20} | s := s + 1; 303 | 303 | {20} | s := s + 1; 304 | 304 | {20} | s := s + 1; 305 | 305 | {20} | s := s + 1; 306 | 306 | {20} | s := s + 1; 307 | 307 | {20} | s := s + 1; 308 | 308 | {20} | s := s + 1; 309 | 309 | {20} | s := s + 1; 310 | 310 | {20} | s := s + 1; 311 | 311 | {20} | s := s + 1; 312 | 312 | {20} | s := s + 1; 313 | 313 | {20} | s := s + 1; 314 | 314 | {20} | s := s + 1; 315 | 315 | {20} | s := s + 1; 316 | 316 | {20} | s := s + 1; 317 | 317 | {20} | s := s + 1; 318 | 318 | {20} | s := s + 1; 319 | 319 | {20} | s := s + 1; 320 | 320 | {20} | s := s + 1; 321 | 321 | {20} | s := s + 1; 322 | 322 | {20} | s := s + 1; 323 | 323 | {20} | s := s + 1; 324 | 324 | {20} | s := s + 1; 325 | 325 | {20} | s := s + 1; 326 | 326 | {20} | s := s + 1; 327 | 327 | {20} | s := s + 1; 328 | 328 | {20} | s := s + 1; 329 | 329 | {20} | s := s + 1; 330 | 330 | {20} | s := s + 1; 331 | 331 | {20} | s := s + 1; 332 | 332 | {20} | s := s + 1; 333 | 333 | {20} | s := s + 1; 334 | 334 | {20} | s := s + 1; 335 | 335 | {20} | s := s + 1; 336 | 336 | {20} | s := s + 1; 337 | 337 | {20} | s := s + 1; 338 | 338 | {20} | s := s + 1; 339 | 339 | {20} | s := s + 1; 340 | 340 | {20} | s := s + 1; 341 | 341 | {20} | s := s + 1; 342 | 342 | {20} | s := s + 1; 343 | 343 | {20} | s := s + 1; 344 | 344 | {20} | s := s + 1; 345 | 345 | {20} | s := s + 1; 346 | 346 | {20} | s := s + 1; 347 | 347 | {20} | s := s + 1; 348 | 348 | {20} | s := s + 1; 349 | 349 | {20} | s := s + 1; 350 | 350 | {20} | s := s + 1; 351 | 351 | {20} | s := s + 1; 352 | 352 | {20} | s := s + 1; 353 | 353 | {20} | s := s + 1; 354 | 354 | {20} | s := s + 1; 355 | 355 | {20} | s := s + 1; 356 | 356 | {20} | s := s + 1; 357 | 357 | {20} | s := s + 1; 358 | 358 | {20} | s := s + 1; 359 | 359 | {20} | s := s + 1; 360 | 360 | {20} | s := s + 1; 361 | 361 | {20} | s := s + 1; 362 | 362 | {20} | s := s + 1; 363 | 363 | {20} | s := s + 1; 364 | 364 | {20} | s := s + 1; 365 | 365 | {20} | s := s + 1; 366 | 366 | {20} | s := s + 1; 367 | 367 | {20} | s := s + 1; 368 | 368 | {20} | s := s + 1; 369 | 369 | {20} | s := s + 1; 370 | 370 | {20} | s := s + 1; 371 | 371 | {20} | s := s + 1; 372 | 372 | {20} | s := s + 1; 373 | 373 | {20} | s := s + 1; 374 | 374 | {20} | s := s + 1; 375 | 375 | {20} | s := s + 1; 376 | 376 | {20} | s := s + 1; 377 | 377 | {20} | s := s + 1; 378 | 378 | {20} | s := s + 1; 379 | 379 | {20} | s := s + 1; 380 | 380 | {20} | s := s + 1; 381 | 381 | {20} | s := s + 1; 382 | 382 | {20} | s := s + 1; 383 | 383 | {20} | s := s + 1; 384 | 384 | {20} | s := s + 1; 385 | 385 | {20} | s := s + 1; 386 | 386 | {20} | s := s + 1; 387 | 387 | {20} | s := s + 1; 388 | 388 | {20} | s := s + 1; 389 | 389 | {20} | s := s + 1; 390 | 390 | {20} | s := s + 1; 391 | 391 | {20} | s := s + 1; 392 | 392 | {20} | s := s + 1; 393 | 393 | {20} | s := s + 1; 394 | 394 | {20} | s := s + 1; 395 | 395 | {20} | s := s + 1; 396 | 396 | {20} | s := s + 1; 397 | 397 | {20} | s := s + 1; 398 | 398 | {20} | s := s + 1; 399 | 399 | {20} | s := s + 1; 400 | 400 | {20} | s := s + 1; 401 | 401 | {20} | s := s + 1; 402 | 402 | {20} | s := s + 1; 403 | 403 | {20} | s := s + 1; 404 | 404 | {20} | s := s + 1; 405 | 405 | {20} | s := s + 1; 406 | 406 | {20} | s := s + 1; 407 | 407 | {20} | s := s + 1; 408 | 408 | {20} | s := s + 1; 409 | 409 | {20} | s := s + 1; 410 | 410 | {20} | s := s + 1; 411 | 411 | {20} | s := s + 1; 412 | 412 | {20} | s := s + 1; 413 | 413 | {20} | s := s + 1; 414 | 414 | {20} | s := s + 1; 415 | 415 | {20} | s := s + 1; 416 | 416 | {20} | s := s + 1; 417 | 417 | {20} | s := s + 1; 418 | 418 | {20} | s := s + 1; 419 | 419 | {20} | s := s + 1; 420 | 420 | {20} | s := s + 1; 421 | 421 | {20} | s := s + 1; 422 | 422 | {20} | s := s + 1; 423 | 423 | {20} | s := s + 1; 424 | 424 | {20} | s := s + 1; 425 | 425 | {20} | s := s + 1; 426 | 426 | {20} | s := s + 1; 427 | 427 | {20} | s := s + 1; 428 | 428 | {20} | s := s + 1; 429 | 429 | {20} | s := s + 1; 430 | 430 | {20} | s := s + 1; 431 | 431 | {20} | s := s + 1; 432 | 432 | {20} | s := s + 1; 433 | 433 | {20} | s := s + 1; 434 | 434 | {20} | s := s + 1; 435 | 435 | {20} | s := s + 1; 436 | 436 | {20} | s := s + 1; 437 | 437 | {20} | s := s + 1; 438 | 438 | {20} | s := s + 1; 439 | 439 | {20} | s := s + 1; 440 | 440 | {20} | s := s + 1; 441 | 441 | {20} | s := s + 1; 442 | 442 | {20} | s := s + 1; 443 | 443 | {20} | s := s + 1; 444 | 444 | {20} | s := s + 1; 445 | 445 | {20} | s := s + 1; 446 | 446 | {20} | s := s + 1; 447 | 447 | {20} | s := s + 1; 448 | 448 | {20} | s := s + 1; 449 | 449 | {20} | s := s + 1; 450 | 450 | {20} | s := s + 1; 451 | 451 | {20} | s := s + 1; 452 | 452 | {20} | s := s + 1; 453 | 453 | {20} | s := s + 1; 454 | 454 | {20} | s := s + 1; 455 | 455 | {20} | s := s + 1; 456 | 456 | {20} | s := s + 1; 457 | 457 | {20} | s := s + 1; 458 | 458 | {20} | s := s + 1; 459 | 459 | {20} | s := s + 1; 460 | 460 | {20} | s := s + 1; 461 | 461 | {20} | s := s + 1; 462 | 462 | {20} | s := s + 1; 463 | 463 | {20} | s := s + 1; 464 | 464 | {20} | s := s + 1; 465 | 465 | {20} | s := s + 1; 466 | 466 | {20} | s := s + 1; 467 | 467 | {20} | s := s + 1; 468 | 468 | {20} | s := s + 1; 469 | 469 | {20} | s := s + 1; 470 | 470 | {20} | s := s + 1; 471 | 471 | {20} | s := s + 1; 472 | 472 | {20} | s := s + 1; 473 | 473 | {20} | s := s + 1; 474 | 474 | {20} | s := s + 1; 475 | 475 | {20} | s := s + 1; 476 | 476 | {20} | s := s + 1; 477 | 477 | {20} | s := s + 1; 478 | 478 | {20} | s := s + 1; 479 | 479 | {20} | s := s + 1; 480 | 480 | {20} | s := s + 1; 481 | 481 | {20} | s := s + 1; 482 | 482 | {20} | s := s + 1; 483 | 483 | {20} | s := s + 1; 484 | 484 | {20} | s := s + 1; 485 | 485 | {20} | s := s + 1; 486 | 486 | {20} | s := s + 1; 487 | 487 | {20} | s := s + 1; 488 | 488 | {20} | s := s + 1; 489 | 489 | {20} | s := s + 1; 490 | 490 | {20} | s := s + 1; 491 | 491 | {20} | s := s + 1; 492 | 492 | {20} | s := s + 1; 493 | 493 | {20} | s := s + 1; 494 | 494 | {20} | s := s + 1; 495 | 495 | {20} | s := s + 1; 496 | 496 | {20} | s := s + 1; 497 | 497 | {20} | s := s + 1; 498 | 498 | {20} | s := s + 1; 499 | 499 | {20} | s := s + 1; 500 | 500 | {20} | s := s + 1; 501 | 501 | {20} | s := s + 1; 502 | 502 | {20} | s := s + 1; 503 | 503 | {20} | s := s + 1; 504 | 504 | {20} | s := s + 1; 505 | 505 | {20} | s := s + 1; 506 | 506 | {20} | s := s + 1; 507 | 507 | {20} | s := s + 1; 508 | 508 | {20} | s := s + 1; 509 | 509 | {20} | s := s + 1; 510 | 510 | {20} | s := s + 1; 511 | 511 | {20} | s := s + 1; 512 | 512 | {20} | s := s + 1; 513 | 513 | {20} | s := s + 1; 514 | 514 | {20} | s := s + 1; 515 | 515 | {20} | s := s + 1; 516 | 516 | {20} | s := s + 1; 517 | 517 | {20} | s := s + 1; 518 | 518 | {20} | s := s + 1; 519 | 519 | {20} | s := s + 1; 520 | 520 | {20} | s := s + 1; 521 | 521 | {20} | s := s + 1; 522 | 522 | {20} | s := s + 1; 523 | 523 | {20} | s := s + 1; 524 | 524 | {20} | s := s + 1; 525 | 525 | {20} | s := s + 1; 526 | 526 | {20} | s := s + 1; 527 | 527 | {20} | s := s + 1; 528 | 528 | {20} | s := s + 1; 529 | 529 | {20} | s := s + 1; 530 | 530 | {20} | s := s + 1; 531 | 531 | {20} | s := s + 1; 532 | 532 | {20} | s := s + 1; 533 | 533 | {20} | s := s + 1; 534 | 534 | {20} | s := s + 1; 535 | 535 | {20} | s := s + 1; 536 | 536 | {20} | s := s + 1; 537 | 537 | {20} | s := s + 1; 538 | 538 | {20} | s := s + 1; 539 | 539 | {20} | s := s + 1; 540 | 540 | {20} | s := s + 1; 541 | 541 | {20} | s := s + 1; 542 | 542 | {20} | s := s + 1; 543 | 543 | {20} | s := s + 1; 544 | 544 | {20} | s := s + 1; 545 | 545 | {20} | s := s + 1; 546 | 546 | {20} | s := s + 1; 547 | 547 | {20} | s := s + 1; 548 | 548 | {20} | s := s + 1; 549 | 549 | {20} | s := s + 1; 550 | 550 | {20} | s := s + 1; 551 | 551 | {20} | s := s + 1; 552 | 552 | {20} | s := s + 1; 553 | 553 | {20} | s := s + 1; 554 | 554 | {20} | s := s + 1; 555 | 555 | {20} | s := s + 1; 556 | 556 | {20} | s := s + 1; 557 | 557 | {20} | s := s + 1; 558 | 558 | {20} | s := s + 1; 559 | 559 | {20} | s := s + 1; 560 | 560 | {20} | s := s + 1; 561 | 561 | {20} | s := s + 1; 562 | 562 | {20} | s := s + 1; 563 | 563 | {20} | s := s + 1; 564 | 564 | {20} | s := s + 1; 565 | 565 | {20} | s := s + 1; 566 | 566 | {20} | s := s + 1; 567 | 567 | {20} | s := s + 1; 568 | 568 | {20} | s := s + 1; 569 | 569 | {20} | s := s + 1; 570 | 570 | {20} | s := s + 1; 571 | 571 | {20} | s := s + 1; 572 | 572 | {20} | s := s + 1; 573 | 573 | {20} | s := s + 1; 574 | 574 | {20} | s := s + 1; 575 | 575 | {20} | s := s + 1; 576 | 576 | {20} | s := s + 1; 577 | 577 | {20} | s := s + 1; 578 | 578 | {20} | s := s + 1; 579 | 579 | {20} | s := s + 1; 580 | 580 | {20} | s := s + 1; 581 | 581 | {20} | s := s + 1; 582 | 582 | {20} | s := s + 1; 583 | 583 | {20} | s := s + 1; 584 | 584 | {20} | s := s + 1; 585 | 585 | {20} | s := s + 1; 586 | 586 | {20} | s := s + 1; 587 | 587 | {20} | s := s + 1; 588 | 588 | {20} | s := s + 1; 589 | 589 | {20} | s := s + 1; 590 | 590 | {20} | s := s + 1; 591 | 591 | {20} | s := s + 1; 592 | 592 | {20} | s := s + 1; 593 | 593 | {20} | s := s + 1; 594 | 594 | {20} | s := s + 1; 595 | 595 | {20} | s := s + 1; 596 | 596 | {20} | s := s + 1; 597 | 597 | {20} | s := s + 1; 598 | 598 | {20} | s := s + 1; 599 | 599 | {20} | s := s + 1; 600 | 600 | {20} | s := s + 1; 601 | 601 | {20} | s := s + 1; 602 | 602 | {20} | s := s + 1; 603 | 603 | {20} | s := s + 1; 604 | 604 | {20} | s := s + 1; 605 | 605 | {20} | s := s + 1; 606 | 606 | {20} | s := s + 1; 607 | 607 | {20} | s := s + 1; 608 | 608 | {20} | s := s + 1; 609 | 609 | {20} | s := s + 1; 610 | 610 | {20} | s := s + 1; 611 | 611 | {20} | s := s + 1; 612 | 612 | {20} | s := s + 1; 613 | 613 | {20} | s := s + 1; 614 | 614 | {20} | s := s + 1; 615 | 615 | {20} | s := s + 1; 616 | 616 | {20} | s := s + 1; 617 | 617 | {20} | s := s + 1; 618 | 618 | {20} | s := s + 1; 619 | 619 | {20} | s := s + 1; 620 | 620 | {20} | s := s + 1; 621 | 621 | {20} | s := s + 1; 622 | 622 | {20} | s := s + 1; 623 | 623 | {20} | s := s + 1; 624 | 624 | {20} | s := s + 1; 625 | 625 | {20} | s := s + 1; 626 | 626 | {20} | s := s + 1; 627 | 627 | {20} | s := s + 1; 628 | 628 | {20} | s := s + 1; 629 | 629 | {20} | s := s + 1; 630 | 630 | {20} | s := s + 1; 631 | 631 | {20} | s := s + 1; 632 | 632 | {20} | s := s + 1; 633 | 633 | {20} | s := s + 1; 634 | 634 | {20} | s := s + 1; 635 | 635 | {20} | s := s + 1; 636 | 636 | {20} | s := s + 1; 637 | 637 | {20} | s := s + 1; 638 | 638 | {20} | s := s + 1; 639 | 639 | {20} | s := s + 1; 640 | 640 | {20} | s := s + 1; 641 | 641 | {20} | s := s + 1; 642 | 642 | {20} | s := s + 1; 643 | 643 | {20} | s := s + 1; 644 | 644 | {20} | s := s + 1; 645 | 645 | {20} | s := s + 1; 646 | 646 | {20} | s := s + 1; 647 | 647 | {20} | s := s + 1; 648 | 648 | {20} | s := s + 1; 649 | 649 | {20} | s := s + 1; 650 | 650 | {20} | s := s + 1; 651 | 651 | {20} | s := s + 1; 652 | 652 | {20} | s := s + 1; 653 | 653 | {20} | s := s + 1; 654 | 654 | {20} | s := s + 1; 655 | 655 | {20} | s := s + 1; 656 | 656 | {20} | s := s + 1; 657 | 657 | {20} | s := s + 1; 658 | 658 | {20} | s := s + 1; 659 | 659 | {20} | s := s + 1; 660 | 660 | {20} | s := s + 1; 661 | 661 | {20} | s := s + 1; 662 | 662 | {20} | s := s + 1; 663 | 663 | {20} | s := s + 1; 664 | 664 | {20} | s := s + 1; 665 | 665 | {20} | s := s + 1; 666 | 666 | {20} | s := s + 1; 667 | 667 | {20} | s := s + 1; 668 | 668 | {20} | s := s + 1; 669 | 669 | {20} | s := s + 1; 670 | 670 | {20} | s := s + 1; 671 | 671 | {20} | s := s + 1; 672 | 672 | {20} | s := s + 1; 673 | 673 | {20} | s := s + 1; 674 | 674 | {20} | s := s + 1; 675 | 675 | {20} | s := s + 1; 676 | 676 | {20} | s := s + 1; 677 | 677 | {20} | s := s + 1; 678 | 678 | {20} | s := s + 1; 679 | 679 | {20} | s := s + 1; 680 | 680 | {20} | s := s + 1; 681 | 681 | {20} | s := s + 1; 682 | 682 | {20} | s := s + 1; 683 | 683 | {20} | s := s + 1; 684 | 684 | {20} | s := s + 1; 685 | 685 | {20} | s := s + 1; 686 | 686 | {20} | s := s + 1; 687 | 687 | {20} | s := s + 1; 688 | 688 | {20} | s := s + 1; 689 | 689 | {20} | s := s + 1; 690 | 690 | {20} | s := s + 1; 691 | 691 | {20} | s := s + 1; 692 | 692 | {20} | s := s + 1; 693 | 693 | {20} | s := s + 1; 694 | 694 | {20} | s := s + 1; 695 | 695 | {20} | s := s + 1; 696 | 696 | {20} | s := s + 1; 697 | 697 | {20} | s := s + 1; 698 | 698 | {20} | s := s + 1; 699 | 699 | {20} | s := s + 1; 700 | 700 | {20} | s := s + 1; 701 | 701 | {20} | s := s + 1; 702 | 702 | {20} | s := s + 1; 703 | 703 | {20} | s := s + 1; 704 | 704 | {20} | s := s + 1; 705 | 705 | {20} | s := s + 1; 706 | 706 | {20} | s := s + 1; 707 | 707 | {20} | s := s + 1; 708 | 708 | {20} | s := s + 1; 709 | 709 | {20} | s := s + 1; 710 | 710 | {20} | s := s + 1; 711 | 711 | {20} | s := s + 1; 712 | 712 | {20} | s := s + 1; 713 | 713 | {20} | s := s + 1; 714 | 714 | {20} | s := s + 1; 715 | 715 | {20} | s := s + 1; 716 | 716 | {20} | s := s + 1; 717 | 717 | {20} | s := s + 1; 718 | 718 | {20} | s := s + 1; 719 | 719 | {20} | s := s + 1; 720 | 720 | {20} | s := s + 1; 721 | 721 | {20} | s := s + 1; 722 | 722 | {20} | s := s + 1; 723 | 723 | {20} | s := s + 1; 724 | 724 | {20} | s := s + 1; 725 | 725 | {20} | s := s + 1; 726 | 726 | {20} | s := s + 1; 727 | 727 | {20} | s := s + 1; 728 | 728 | {20} | s := s + 1; 729 | 729 | {20} | s := s + 1; 730 | 730 | {20} | s := s + 1; 731 | 731 | {20} | s := s + 1; 732 | 732 | {20} | s := s + 1; 733 | 733 | {20} | s := s + 1; 734 | 734 | {20} | s := s + 1; 735 | 735 | {20} | s := s + 1; 736 | 736 | {20} | s := s + 1; 737 | 737 | {20} | s := s + 1; 738 | 738 | {20} | s := s + 1; 739 | 739 | {20} | s := s + 1; 740 | 740 | {20} | s := s + 1; 741 | 741 | {20} | s := s + 1; 742 | 742 | {20} | s := s + 1; 743 | 743 | {20} | s := s + 1; 744 | 744 | {20} | s := s + 1; 745 | 745 | {20} | s := s + 1; 746 | 746 | {20} | s := s + 1; 747 | 747 | {20} | s := s + 1; 748 | 748 | {20} | s := s + 1; 749 | 749 | {20} | s := s + 1; 750 | 750 | {20} | s := s + 1; 751 | 751 | {20} | s := s + 1; 752 | 752 | {20} | s := s + 1; 753 | 753 | {20} | s := s + 1; 754 | 754 | {20} | s := s + 1; 755 | 755 | {20} | s := s + 1; 756 | 756 | {20} | s := s + 1; 757 | 757 | {20} | s := s + 1; 758 | 758 | {20} | s := s + 1; 759 | 759 | {20} | s := s + 1; 760 | 760 | {20} | s := s + 1; 761 | 761 | {20} | s := s + 1; 762 | 762 | {20} | s := s + 1; 763 | 763 | {20} | s := s + 1; 764 | 764 | {20} | s := s + 1; 765 | 765 | {20} | s := s + 1; 766 | 766 | {20} | s := s + 1; 767 | 767 | {20} | s := s + 1; 768 | 768 | {20} | s := s + 1; 769 | 769 | {20} | s := s + 1; 770 | 770 | {20} | s := s + 1; 771 | 771 | {20} | s := s + 1; 772 | 772 | {20} | s := s + 1; 773 | 773 | {20} | s := s + 1; 774 | 774 | {20} | s := s + 1; 775 | 775 | {20} | s := s + 1; 776 | 776 | {20} | s := s + 1; 777 | 777 | {20} | s := s + 1; 778 | 778 | {20} | s := s + 1; 779 | 779 | {20} | s := s + 1; 780 | 780 | {20} | s := s + 1; 781 | 781 | {20} | s := s + 1; 782 | 782 | {20} | s := s + 1; 783 | 783 | {20} | s := s + 1; 784 | 784 | {20} | s := s + 1; 785 | 785 | {20} | s := s + 1; 786 | 786 | {20} | s := s + 1; 787 | 787 | {20} | s := s + 1; 788 | 788 | {20} | s := s + 1; 789 | 789 | {20} | s := s + 1; 790 | 790 | {20} | s := s + 1; 791 | 791 | {20} | s := s + 1; 792 | 792 | {20} | s := s + 1; 793 | 793 | {20} | s := s + 1; 794 | 794 | {20} | s := s + 1; 795 | 795 | {20} | s := s + 1; 796 | 796 | {20} | s := s + 1; 797 | 797 | {20} | s := s + 1; 798 | 798 | {20} | s := s + 1; 799 | 799 | {20} | s := s + 1; 800 | 800 | {20} | s := s + 1; 801 | 801 | {20} | s := s + 1; 802 | 802 | {20} | s := s + 1; 803 | 803 | {20} | s := s + 1; 804 | 804 | {20} | s := s + 1; 805 | 805 | {20} | s := s + 1; 806 | 806 | {20} | s := s + 1; 807 | 807 | {20} | s := s + 1; 808 | 808 | {20} | s := s + 1; 809 | 809 | {20} | s := s + 1; 810 | 810 | {20} | s := s + 1; 811 | 811 | {20} | s := s + 1; 812 | 812 | {20} | s := s + 1; 813 | 813 | {20} | s := s + 1; 814 | 814 | {20} | s := s + 1; 815 | 815 | {20} | s := s + 1; 816 | 816 | {20} | s := s + 1; 817 | 817 | {20} | s := s + 1; 818 | 818 | {20} | s := s + 1; 819 | 819 | {20} | s := s + 1; 820 | 820 | {20} | s := s + 1; 821 | 821 | {20} | s := s + 1; 822 | 822 | {20} | s := s + 1; 823 | 823 | {20} | s := s + 1; 824 | 824 | {20} | s := s + 1; 825 | 825 | {20} | s := s + 1; 826 | 826 | {20} | s := s + 1; 827 | 827 | {20} | s := s + 1; 828 | 828 | {20} | s := s + 1; 829 | 829 | {20} | s := s + 1; 830 | 830 | {20} | s := s + 1; 831 | 831 | {20} | s := s + 1; 832 | 832 | {20} | s := s + 1; 833 | 833 | {20} | s := s + 1; 834 | 834 | {20} | s := s + 1; 835 | 835 | {20} | s := s + 1; 836 | 836 | {20} | s := s + 1; 837 | 837 | {20} | s := s + 1; 838 | 838 | {20} | s := s + 1; 839 | 839 | {20} | s := s + 1; 840 | 840 | {20} | s := s + 1; 841 | 841 | {20} | s := s + 1; 842 | 842 | {20} | s := s + 1; 843 | 843 | {20} | s := s + 1; 844 | 844 | {20} | s := s + 1; 845 | 845 | {20} | s := s + 1; 846 | 846 | {20} | s := s + 1; 847 | 847 | {20} | s := s + 1; 848 | 848 | {20} | s := s + 1; 849 | 849 | {20} | s := s + 1; 850 | 850 | {20} | s := s + 1; 851 | 851 | {20} | s := s + 1; 852 | 852 | {20} | s := s + 1; 853 | 853 | {20} | s := s + 1; 854 | 854 | {20} | s := s + 1; 855 | 855 | {20} | s := s + 1; 856 | 856 | {20} | s := s + 1; 857 | 857 | {20} | s := s + 1; 858 | 858 | {20} | s := s + 1; 859 | 859 | {20} | s := s + 1; 860 | 860 | {20} | s := s + 1; 861 | 861 | {20} | s := s + 1; 862 | 862 | {20} | s := s + 1; 863 | 863 | {20} | s := s + 1; 864 | 864 | {20} | s := s + 1; 865 | 865 | {20} | s := s + 1; 866 | 866 | {20} | s := s + 1; 867 | 867 | {20} | s := s + 1; 868 | 868 | {20} | s := s + 1; 869 | 869 | {20} | s := s + 1; 870 | 870 | {20} | s := s + 1; 871 | 871 | {20} | s := s + 1; 872 | 872 | {20} | s := s + 1; 873 | 873 | {20} | s := s + 1; 874 | 874 | {20} | s := s + 1; 875 | 875 | {20} | s := s + 1; 876 | 876 | {20} | s := s + 1; 877 | 877 | {20} | s := s + 1; 878 | 878 | {20} | s := s + 1; 879 | 879 | {20} | s := s + 1; 880 | 880 | {20} | s := s + 1; 881 | 881 | {20} | s := s + 1; 882 | 882 | {20} | s := s + 1; 883 | 883 | {20} | s := s + 1; 884 | 884 | {20} | s := s + 1; 885 | 885 | {20} | s := s + 1; 886 | 886 | {20} | s := s + 1; 887 | 887 | {20} | s := s + 1; 888 | 888 | {20} | s := s + 1; 889 | 889 | {20} | s := s + 1; 890 | 890 | {20} | s := s + 1; 891 | 891 | {20} | s := s + 1; 892 | 892 | {20} | s := s + 1; 893 | 893 | {20} | s := s + 1; 894 | 894 | {20} | s := s + 1; 895 | 895 | {20} | s := s + 1; 896 | 896 | {20} | s := s + 1; 897 | 897 | {20} | s := s + 1; 898 | 898 | {20} | s := s + 1; 899 | 899 | {20} | s := s + 1; 900 | 900 | {20} | s := s + 1; 901 | 901 | {20} | s := s + 1; 902 | 902 | {20} | s := s + 1; 903 | 903 | {20} | s := s + 1; 904 | 904 | {20} | s := s + 1; 905 | 905 | {20} | s := s + 1; 906 | 906 | {20} | s := s + 1; 907 | 907 | {20} | s := s + 1; 908 | 908 | {20} | s := s + 1; 909 | 909 | {20} | s := s + 1; 910 | 910 | {20} | s := s + 1; 911 | 911 | {20} | s := s + 1; 912 | 912 | {20} | s := s + 1; 913 | 913 | {20} | s := s + 1; 914 | 914 | {20} | s := s + 1; 915 | 915 | {20} | s := s + 1; 916 | 916 | {20} | s := s + 1; 917 | 917 | {20} | s := s + 1; 918 | 918 | {20} | s := s + 1; 919 | 919 | {20} | s := s + 1; 920 | 920 | {20} | s := s + 1; 921 | 921 | {20} | s := s + 1; 922 | 922 | {20} | s := s + 1; 923 | 923 | {20} | s := s + 1; 924 | 924 | {20} | s := s + 1; 925 | 925 | {20} | s := s + 1; 926 | 926 | {20} | s := s + 1; 927 | 927 | {20} | s := s + 1; 928 | 928 | {20} | s := s + 1; 929 | 929 | {20} | s := s + 1; 930 | 930 | {20} | s := s + 1; 931 | 931 | {20} | s := s + 1; 932 | 932 | {20} | s := s + 1; 933 | 933 | {20} | s := s + 1; 934 | 934 | {20} | s := s + 1; 935 | 935 | {20} | s := s + 1; 936 | 936 | {20} | s := s + 1; 937 | 937 | {20} | s := s + 1; 938 | 938 | {20} | s := s + 1; 939 | 939 | {20} | s := s + 1; 940 | 940 | {20} | s := s + 1; 941 | 941 | {20} | s := s + 1; 942 | 942 | {20} | s := s + 1; 943 | 943 | {20} | s := s + 1; 944 | 944 | {20} | s := s + 1; 945 | 945 | {20} | s := s + 1; 946 | 946 | {20} | s := s + 1; 947 | 947 | {20} | s := s + 1; 948 | 948 | {20} | s := s + 1; 949 | 949 | {20} | s := s + 1; 950 | 950 | {20} | s := s + 1; 951 | 951 | {20} | s := s + 1; 952 | 952 | {20} | s := s + 1; 953 | 953 | {20} | s := s + 1; 954 | 954 | {20} | s := s + 1; 955 | 955 | {20} | s := s + 1; 956 | 956 | {20} | s := s + 1; 957 | 957 | {20} | s := s + 1; 958 | 958 | {20} | s := s + 1; 959 | 959 | {20} | s := s + 1; 960 | 960 | {20} | s := s + 1; 961 | 961 | {20} | s := s + 1; 962 | 962 | {20} | s := s + 1; 963 | 963 | {20} | s := s + 1; 964 | 964 | {20} | s := s + 1; 965 | 965 | {20} | s := s + 1; 966 | 966 | {20} | s := s + 1; 967 | 967 | {20} | s := s + 1; 968 | 968 | {20} | s := s + 1; 969 | 969 | {20} | s := s + 1; 970 | 970 | {20} | s := s + 1; 971 | 971 | {20} | s := s + 1; 972 | 972 | {20} | s := s + 1; 973 | 973 | {20} | s := s + 1; 974 | 974 | {20} | s := s + 1; 975 | 975 | {20} | s := s + 1; 976 | 976 | {20} | s := s + 1; 977 | 977 | {20} | s := s + 1; 978 | 978 | {20} | s := s + 1; 979 | 979 | {20} | s := s + 1; 980 | 980 | {20} | s := s + 1; 981 | 981 | {20} | s := s + 1; 982 | 982 | {20} | s := s + 1; 983 | 983 | {20} | s := s + 1; 984 | 984 | {20} | s := s + 1; 985 | 985 | {20} | s := s + 1; 986 | 986 | {20} | s := s + 1; 987 | 987 | {20} | s := s + 1; 988 | 988 | {20} | s := s + 1; 989 | 989 | {20} | s := s + 1; 990 | 990 | {20} | s := s + 1; 991 | 991 | {20} | s := s + 1; 992 | 992 | {20} | s := s + 1; 993 | 993 | {20} | s := s + 1; 994 | 994 | {20} | s := s + 1; 995 | 995 | {20} | s := s + 1; 996 | 996 | {20} | s := s + 1; 997 | 997 | {20} | s := s + 1; 998 | 998 | {20} | s := s + 1; 999 | 999 | {20} | s := s + 1; 1000 | 1000 | {20} | s := s + 1; 1001 | 1001 | {20} | s := s + 1; 1002 | 1002 | {20} | s := s + 1; 1003 | 1003 | {20} | s := s + 1; 1004 | 1004 | {20} | s := s + 1; 1005 | 1005 | {20} | s := s + 1; 1006 | 1006 | {20} | s := s + 1; 1007 | 1007 | {20} | s := s + 1; 1008 | 1008 | {20} | s := s + 1; 1009 | 1009 | {20} | s := s + 1; 1010 | 1010 | {20} | s := s + 1; 1011 | 1011 | {20} | s := s + 1; 1012 | 1012 | {20} | s := s + 1; 1013 | 1013 | {20} | s := s + 1; 1014 | 1014 | {20} | s := s + 1; 1015 | 1015 | {20} | s := s + 1; 1016 | 1016 | {20} | s := s + 1; 1017 | 1017 | {20} | s := s + 1; 1018 | 1018 | {20} | s := s + 1; 1019 | 1019 | {20} | s := s + 1; 1020 | 1020 | {20} | s := s + 1; 1021 | 1021 | {20} | s := s + 1; 1022 | 1022 | {20} | s := s + 1; 1023 | 1023 | {20} | s := s + 1; 1024 | 1024 | {20} | s := s + 1; 1025 | 1025 | {20} | s := s + 1; 1026 | 1026 | {20} | s := s + 1; 1027 | 1027 | {20} | s := s + 1; 1028 | 1028 | {20} | s := s + 1; 1029 | 1029 | {20} | s := s + 1; 1030 | 1030 | {20} | s := s + 1; 1031 | 1031 | {20} | s := s + 1; 1032 | 1032 | {20} | s := s + 1; 1033 | 1033 | {20} | s := s + 1; 1034 | 1034 | {20} | s := s + 1; 1035 | 1035 | {20} | s := s + 1; 1036 | 1036 | {20} | s := s + 1; 1037 | 1037 | {20} | s := s + 1; 1038 | | | end loop; 1039 | | | end loop; 1040 | 1040 | {20} | j := j + 1; 1041 | | | end loop; 1042 | | | exception when others then 1043 | 1043 | {0} | raise 'reraised exception %', sqlerrm; 1044 | | | end; 1045 | 1045 | {2} | return $1; 1046 | | | end; (1046 rows) select funcoid, exec_count from plpgsql_profiler_functions_all(); funcoid | exec_count -----------------+------------ longfx(integer) | 2 (1 row) -- coverage tests set plpgsql_check.profiler to on; create or replace function covtest(int) returns int as $$ declare a int = $1; begin a := a + 1; if a < 10 then a := a + 1; end if; a := a + 1; return a; end; $$ language plpgsql; set plpgsql_check.profiler to on; select covtest(10); covtest --------- 12 (1 row) select stmtid, exec_stmts, stmtname from plpgsql_profiler_function_statements_tb('covtest'); stmtid | exec_stmts | stmtname --------+------------+----------------- 1 | 1 | statement block 2 | 1 | assignment 3 | 1 | IF 4 | 0 | assignment 5 | 1 | assignment 6 | 1 | RETURN (6 rows) select plpgsql_coverage_statements('covtest'); plpgsql_coverage_statements ----------------------------- 0.8333333333333334 (1 row) select plpgsql_coverage_branches('covtest'); plpgsql_coverage_branches --------------------------- 0.5 (1 row) select covtest(1); covtest --------- 4 (1 row) select stmtid, exec_stmts, stmtname from plpgsql_profiler_function_statements_tb('covtest'); stmtid | exec_stmts | stmtname --------+------------+----------------- 1 | 2 | statement block 2 | 2 | assignment 3 | 2 | IF 4 | 1 | assignment 5 | 2 | assignment 6 | 2 | RETURN (6 rows) select plpgsql_coverage_statements('covtest'); plpgsql_coverage_statements ----------------------------- 1 (1 row) select plpgsql_coverage_branches('covtest'); plpgsql_coverage_branches --------------------------- 1 (1 row) set plpgsql_check.profiler to off; -- aborted function has profile too create or replace function test_function(a int) returns int as $$ begin if (a > 5) then a := a + 10; return a; else raise exception 'a < 5'; end if; end; $$ language plpgsql; set plpgsql_check.profiler to on; select test_function(1); ERROR: a < 5 CONTEXT: PL/pgSQL function test_function(integer) line 7 at RAISE select test_function(10); test_function --------------- 20 (1 row) select lineno, exec_stmts, exec_stmts_err, source from plpgsql_profiler_function_tb('test_function'); lineno | exec_stmts | exec_stmts_err | source --------+------------+----------------+------------------------------ 1 | | | 2 | {2} | {1} | begin 3 | {2} | {1} | if (a > 5) then 4 | {1} | {0} | a := a + 10; 5 | {1} | {0} | return a; 6 | | | else 7 | {1} | {1} | raise exception 'a < 5'; 8 | | | end if; 9 | | | end; (9 rows) create or replace function test_function1(a int) returns int as $$ begin if (a > 5) then a := a + 10; return a; else raise exception 'a < 5'; end if; exception when others then raise notice 'do warning'; return -1; end; $$ language plpgsql; select test_function1(1); NOTICE: do warning test_function1 ---------------- -1 (1 row) select test_function1(10); test_function1 ---------------- 20 (1 row) select lineno, exec_stmts, exec_stmts_err, source from plpgsql_profiler_function_tb('test_function1'); lineno | exec_stmts | exec_stmts_err | source --------+------------+----------------+-------------------------------- 1 | | | 2 | {2} | {0} | begin 3 | {2} | {1} | if (a > 5) then 4 | {1} | {0} | a := a + 10; 5 | {1} | {0} | return a; 6 | | | else 7 | {1} | {1} | raise exception 'a < 5'; 8 | | | end if; 9 | | | exception when others then 10 | {1} | {0} | raise notice 'do warning'; 11 | {1} | {0} | return -1; 12 | | | end; (12 rows) drop function test_function(int); drop function test_function1(int); set plpgsql_check.profiler to off; drop table t1;