def create_vaccination_reactions_model(
    species_comp,
    vaccination_states,
    vaccination_states_removed,
    non_vaccination_state,
    virus_states,
    areas,
):
    """Create vaccination reactions for the model.

    Parameters
    ----------
    species_comp : list of strings
        List containing the names of the compartments.

    vaccination_states : list of strings
        List containing the names of the vaccinations containing a state for
        non-vaccinated individuals.

    vaccination_states_removed : list of strings
        List containing the names of the vaccinations not containing a state for
        non-vaccinated individuals.

    non_vaccination_state : str
        Name of state indicates non-vaccinated individuals.

    virus_states : list of strings
        List containing the names of the virus types.

    areas : list of strings
        List containing the names of the areas.

    Returns
    -------
    vaccination_reactions : dict
        Dictionary that contains the vaccination reaction names as keys
        and dicitonaries that contain the reactants, products and formulas
        as values.
    """
    vaccination_reactions = {}
    for index_compartments in species_comp:
        for index_areas in areas:
            for index_virus in virus_states:
                if index_compartments == "susceptible":
                    numb_to_be_vaccinated = (
                        f"{index_compartments}_{index_areas}_{non_vaccination_state}"
                    )
                else:
                    numb_to_be_vaccinated = f"{index_compartments}_{index_areas}_{non_vaccination_state}_{index_virus}"
                for index_vaccination in vaccination_states_removed:
                    if index_compartments == "susceptible":
                        numb_vaccinated = (
                            f"{index_compartments}_{index_areas}_{index_vaccination}"
                        )
                    else:
                        numb_vaccinated = f"{index_compartments}_{index_areas}_{index_vaccination}_{index_virus}"
                    vaccination_reactions[
                        f"{numb_to_be_vaccinated}_to_{numb_vaccinated}"
                    ] = {
                        "reactants": {f"{numb_to_be_vaccinated}": 1},
                        "products": {f"{numb_vaccinated}": 1},
                        "formula": f" nu_{index_areas}_{index_vaccination} * {numb_to_be_vaccinated}",
                    }

    return vaccination_reactions