(* recursively traverse the first child *)
let () = loop_td_and_bu fc in
(* here we re-enter the node from its first child,
get the new status of the first child *)
let fcs1 = unsafe_get_status status fc_id in
(* update the status *)
(* recursively traverse the first child *)
let () = loop_td_and_bu fc in
(* here we re-enter the node from its first child,
get the new status of the first child *)
let fcs1 = unsafe_get_status status fc_id in
(* update the status *)