let path_to_root n =
    let rec backup n acc =
      Format.printf "path_to_root: ";
      print_node Format.std_formatter n;
      Format.printf "@.";
      match get_kind n with
        Entry en ->
          let reg = get_region n in
          (match nmap_choose (fun r -> Region.leq r reg) en.call_sites with
            None ->
              Format.printf "path_to_root terminates; no matching call site@.";
              n::acc
          | Some n_call -> backup n_call (n::acc))
      |        _ -> backup (Tree.get_parent n) (n::acc) in
    backup n []