let print_mean_html_in_table (hpr : string -> unit) (gl:student list) 
    (paddl:paddress list) (groupnum:int) = 
    let numlist = List.length (select (fun s -> s.group == groupnum) gl) in
    hpr "<tbody><tr bgcolor='#FFCFCF'><td>\n";
    hpr (Printf.sprintf "(%d students)\n" numlist);
    hpr "</td><td/><td/>\n";
    if (not(!nologin_mode)) then hpr "<td/>\n";
    if (not(!nogrades_mode)) then begin 
      List.iter (fun padd -> 
           if (!do_assign_resp) then 
             hpr "<td/>";
           hpr (Printf.sprintf "<td align='center'>%s</td><td align='center'>%s</td>" 
                  (let cof  = get_group_project_coeff groupnum padd in
                     if (cof = 0.) then "" else 
                       Printf.sprintf "<font color='#FF5050'>%.1f</font>" cof)
                  (let mean = project_mean gl groupnum padd in
                     if (mean = 0.) then "" else Printf.sprintf "%.1f" mean) 
               );
                ) paddl;
      (* Print the group mean *)
      hpr (Printf.sprintf "<td align='center'><font color='#ff0000'>%.1f</font></td>\n" 
             (group_mean groupnum));
    end;
    hpr "</tr></tbody>\n"