diff --git a/Procedures/get_hi_tree_for_uid_pg_numeric__date__text_.txt b/Procedures/get_hi_tree_for_uid_pg_numeric__date__text_.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f0b81e7e651936ef86cd1385851ded97b181a032
--- /dev/null
+++ b/Procedures/get_hi_tree_for_uid_pg_numeric__date__text_.txt
@@ -0,0 +1,73 @@
+-- DROP PROCEDURE schema_xyz.get_hi_tree_for_uid_pg(numeric, date, text);
+
+CREATE OR REPLACE PROCEDURE schema_xyz.get_hi_tree_for_uid_pg(input_uid numeric, hi_date date, output_table text)
+ LANGUAGE plpgsql
+AS $procedure$
+	BEGIN
+
+/* 
+
+Parameters:
+
+* a uid for which the HIs are to be found
+* a date for which you want to search
+* a name for an output table, which then contains the result
+*/
+		
+		
+EXECUTE 'create table '||output_table||' as (SELECT (CASE r1.uid_0 WHEN 0 THEN r1.uid_1 ELSE  
+          (CASE r2.uid_0 WHEN 0 THEN r2.uid_1 ELSE
+             (CASE r3.uid_0 WHEN 0 THEN r3.uid_1 ELSE 
+                (CASE r4.uid_0 WHEN 0 THEN r4.uid_1 ELSE 
+                   (CASE r5.uid_0 WHEN 0 THEN r5.uid_1 ELSE
+                      (CASE r6.uid_0 WHEN 0 THEN r6.uid_1 ELSE r6.uid_0 END)END)END)END)END)END) top,
+       r6.uid_0 u6,
+       r5.uid_0 u5,
+       r4.uid_0 u4,
+       r3.uid_0 u3,
+       r2.uid_0 u2,
+       r1.uid_0 u1,
+       r1.uid_1 u_last
+
+FROM schema_xyz.relation r1
+LEFT JOIN schema_xyz.relation r2 ON  r2.uid_1=r1.uid_0
+                      AND r2.type IN (0,1)
+                      AND r2.last_date  >=to_date('''||hi_date||''',''YYYY-MM-DD'')
+                      AND r2.first_date <=to_date('''||hi_date||''',''YYYY-MM-DD'')  
+LEFT JOIN schema_xyz.relation r3 ON  r3.uid_1=r2.uid_0
+                      AND r3.type IN (0,1)
+                      AND r3.last_date >=to_date('''||hi_date||''',''YYYY-MM-DD'')
+                      AND r3.first_date <=to_date('''||hi_date||''',''YYYY-MM-DD'')  
+LEFT JOIN schema_xyz.relation r4 ON  r4.uid_1=r3.uid_0
+                      AND r4.type IN (0,1)
+                      AND r4.last_date >=to_date('''||hi_date||''',''YYYY-MM-DD'')  
+                      AND r4.first_date <=to_date('''||hi_date||''' ,''YYYY-MM-DD'') 
+LEFT JOIN schema_xyz.relation r5 ON  r5.uid_1=r4.uid_0
+                      AND r5.type IN (0,1)
+                      AND r5.last_date >=to_date('''||hi_date||''',''YYYY-MM-DD'')  
+                      AND r5.first_date <=to_date('''||hi_date||''' ,''YYYY-MM-DD'') 
+LEFT JOIN schema_xyz.relation r6 ON  r6.uid_1=r5.uid_0
+                      AND r6.type IN (0,1)
+                      AND r6.first_date >=to_date('''||hi_date||''',''YYYY-MM-DD'') 
+                      AND r6.last_date <=to_date('''||hi_date||''',''YYYY-MM-DD'') 
+WHERE 
+r1.uid_1='||input_uid||' 
+AND r1.last_date  >=to_date('''||hi_date||''',''YYYY-MM-DD'')
+AND r1.first_date <=to_date('''||hi_date||''',''YYYY-MM-DD'')  
+and
+(CASE r1.uid_0 WHEN 0 THEN r1.uid_1 ELSE  
+          (CASE r2.uid_0 WHEN 0 THEN r2.uid_1 ELSE
+             (CASE r3.uid_0 WHEN 0 THEN r3.uid_1 ELSE 
+                (CASE r4.uid_0 WHEN 0 THEN r4.uid_1 ELSE 
+                   (CASE r5.uid_0 WHEN 0 THEN r5.uid_1 ELSE
+                      (CASE r6.uid_0 WHEN 0 THEN r6.uid_1 ELSE r6.uid_0 END)END)END)END)END)END) IS NOT NULL
+AND r1.type IN (0, 1))';
+
+
+		
+		
+
+end;
+	
+$procedure$
+;