def METHOD_NAME(
    operands: Sequence[Operation | SSAValue],
    result_types: Sequence[Attribute],
    lower_bound: int | AffineMapAttr,
    upper_bound: int | AffineMapAttr,
    region: Region,
    step: int | AnyIntegerAttr = 1,
) -> For:
    if isinstance(lower_bound, int):
        lower_bound = AffineMapAttr(
            AffineMap(0, 0, (AffineExpr.constant(lower_bound),))
        )
    if isinstance(upper_bound, int):
        upper_bound = AffineMapAttr(
            AffineMap(0, 0, (AffineExpr.constant(upper_bound),))
        )
    if isinstance(step, int):
        step = IntegerAttr.from_index_int_value(step)
    attributes: dict[str, Attribute] = {
        "lower_bound": lower_bound,
        "upper_bound": upper_bound,
        "step": step,
    }
    return For.build(
        operands=[operands],
        result_types=[result_types],
        attributes=attributes,
        regions=[region],
    )