# From 3.x test_audiop.py

# Bug is handling default value after * argument in a lambda.
# That's a mouthful of description; I am not sure if the really
# hacky fix to the code is even correct.

#
# FIXME: try and test with more than one default argument.

# RUNNABLE
def pack(width, data):
    return (width, data)

packs = {w: (lambda *data, width=w: pack(width, data)) for w in (1, 2, 4)}

assert packs[1]('a') == (1, ('a',))
assert packs[2]('b') == (2, ('b',))
assert packs[4]('c') == (4, ('c',))
