def parse_command_line_name_and_range(name_and_count_arg):
    """
    Parse command line argument that looks like "phage:1000,proka:1000" into
    {
      phage_dset_name: "phage",
      phage_count: (0, 1000),
      prok_dset_name: "proka",
      proka_count: (0, 1000)
    }

    :param name_and_count: (str) "phage:1000,proka:1000"
    :return: (dict)
    """
    phage_arg, prok_arg = name_and_count_arg.split(',')
    phage_dset_name, phage_stop = phage_arg.split(':')
    proka_dset_name, proka_stop = prok_arg.split(':')

    names_and_counts = {
        'phage_dset_name': phage_dset_name,
        'phage_range': (0, int(phage_stop)),
        'proka_dset_name': proka_dset_name,
        'proka_range': (0, int(proka_stop))
    }

    return names_and_counts