"Gather (cost=9973.24..37458627418.30 rows=3464208 width=98)"
" Workers Planned: 1"
" -> Nested Loop (cost=8973.24..37458279997.50 rows=2037769 width=98)"
" -> Parallel Seq Scan on stream_dist_final a (cost=0.00..1639.16 rows=10216 width=622)"
" -> Nested Loop (cost=8973.24..27228.13 rows=15 width=3735)"
" -> Index Scan using hab_vul_final_geom_idx on hab_vul_final b (cost=0.14..50.16 rows=1 width=655)"
" Index Cond: (geom && a.geom)"
" Filter: (st_intersects(a.geom, geom) AND (NOT st_touches(a.geom, geom)))"
" -> Nested Loop (cost=8973.10..27177.94 rows=2 width=3080)"
" -> Index Scan using rd_dist_final_geom_idx on rd_dist_final c (cost=50.27..202.54 rows=1 width=616)"
" Index Cond: (geom && CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END)"
" Filter: (st_intersects(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, geom) AND (NOT st_touches(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, geom)))"
" -> Nested Loop (cost=8922.83..26975.38 rows=2 width=2464)"
" -> Index Scan using wetland_dist_final_geom_idx on wetland_dist_final d (cost=200.65..653.68 rows=1 width=616)"
" Index Cond: (geom && CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END)"
" Filter: (st_intersects(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, geom) AND (NOT st_touches(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, geom)))"
" -> Nested Loop (cost=8722.19..26321.69 rows=2 width=1848)"
" -> Index Scan using dwn_rd_cross_geom_idx on dwn_rd_cross e (cost=651.77..2007.01 rows=1 width=616)"
" Index Cond: (geom && CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END)"
" Filter: (st_intersects(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, geom) AND (NOT st_touches(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, geom)))"
" -> Nested Loop (cost=8070.42..24314.66 rows=2 width=1232)"
" -> Index Scan using dwn_wtr_cross_geom_idx on dwn_wtr_cross f (cost=2005.14..6067.14 rows=1 width=616)"
" Index Cond: (geom && CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END)"
" Filter: (st_intersects(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, geom) AND (NOT st_touches(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, geom)))"
" -> Index Scan using dwn_pop_cross_geom_idx on dwn_pop_cross g (cost=6065.27..18247.51 rows=1 width=616)"
" Index Cond: (geom && CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom, '-1'::double precision)) END)"
" Filter: (st_intersects(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom, '-1'::double precision)) END, geom) AND (NOT st_touches(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom) THEN CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom) THEN CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END ELSE st_multi(st_intersection(CASE WHEN st_coveredby(a.geom, b.geom) THEN a.geom ELSE st_multi(st_intersection(a.geom, b.geom, '-1'::double precision)) END, c.geom, '-1'::double precision)) END, d.geom, '-1'::double precision)) END, e.geom, '-1'::double precision)) END, f.geom, '-1'::double precision)) END, geom)))"