def iterator_zip(variables: VarType, parent: str = None) -> Iterable[VarMatrix]:
    """Apply the zip operator to a set of variables.

    This uses the python zip iterator to combine multiple lists of variables such that
    the nth variable in each list is aligned.

    Args:
        variables: The variables object
        parent: Unused

    """

    logger.debug("Yielding from zip iterator")
    if isinstance(variables, list):
        for item in variables:
            yield list(variable_matrix(item, parent, "zip"))
    else:
        yield list(variable_matrix(variables, parent, "zip"))