s = set([x for x in range(3)])
s = set(
    [x for x in range(3)]
)

s = f"{set([x for x in 'ab'])}"
s = f'{set([x for x in "ab"])}'

def f(x):
    return x

s = f"{set([f(x) for x in 'ab'])}"

s = f"{ set([x for x in 'ab']) | set([x for x in 'ab']) }"
s = f"{set([x for x in 'ab']) | set([x for x in 'ab'])}"

s = set(  # comment
    [x for x in range(3)]
)

s = set([  # comment
    x for x in range(3)
])

s = set(([x for x in range(3)]))

s = set(((([x for x in range(3)]))))

s = set( # outer set comment
( # inner paren comment - not preserved
((
[ # comprehension comment
 x for x in range(3)]
 ))))

# Test trailing comma case
s = set([x for x in range(3)],)

s = t"{set([x for x in 'ab'])}"
s = t'{set([x for x in "ab"])}'

def f(x):
    return x

s = t"{set([f(x) for x in 'ab'])}"

s = t"{ set([x for x in 'ab']) | set([x for x in 'ab']) }"
s = t"{set([x for x in 'ab']) | set([x for x in 'ab'])}"

