code: def sort_protein_group(pgroup, sortfunctions, sortfunc_index):
      pgroup_out = []
      subgroups = sortfunctions[sortfunc_index](pgroup)
      sortfunc_index += 1
      for subgroup in subgroups:
          if len(subgroup) > 1 and sortfunc_index < len(sortfunctions):
              pgroup_out.extend(sort_protein_group(subgroup,
                                                   sortfunctions,
                                                   sortfunc_index))
          else:
              pgroup_out.extend(subgroup)
      return pgroup_out