--
-- add_months/2
--
create or replace function add_months(
  timestamp with time zone,
  integer
) returns timestamptz as $$

declare
       add_months__somedate	alias for $1;
       add_months__n_months	alias for $2;
begin

	-- Date math magic
	return add_months__somedate + to_interval(add_months__n_months,'months');

end;$$ language plpgsql;