let do_something_group_project_team ifok orelse gnum pnum tnum = 
  do_something_group_project (fun p -> try
                let team = (try H.get_assoc p.teams tnum
                            with _ -> H.update_assoc p.teams tnum (make_team tnum);
                              H.get_assoc p.teams tnum) in
                                  ifok team 
                              with _ -> orelse()
                             ) orelse gnum pnum