let find_in_hierarchy sp service (main, pages) =
let rec aux service i = function
| [] -> raise Not_found
| (_, Site_tree (Main_page s, hsl))::_ when same_service_opt sp s service ->
(try
i::aux service 0 hsl
with Not_found -> [i])
| (_, Disabled)::l -> aux service (i+1) l
| (_, Site_tree (_, hsl))::l ->
(try
i::aux service 0 hsl
with Not_found -> aux service (i+1) l)
in
try aux service 0 pages
with Not_found -> []