def METHOD_NAME(pair: Pair[Pair[A, B], C]) -> Pair[Pair[A, B], C]:
    val1 = func1(func1(identity))
    reveal_type(
        val1,
        expected_text="(Pair[Pair[T@identity, X(1)@func1], X@func1]) -> Pair[Pair[T@identity, X(1)@func1], X@func1]",
    )
    val2 = val1(pair)
    reveal_type(val2, expected_text="Pair[Pair[A@test_3, B@test_3], C@test_3]")
    return val2