in nubia/internal/typing/builder.py [0:0]
def _apply_tuple_type(value, *types):
    if not types:
        return tuple(value)
    if len(value) != len(types):
        raise ValueError(
            "Cannot build a tuple of {} elements with {} "
            'values: "{}"'.format(len(types), len(value), value)
        )
    return tuple(function(value) for function, value in zip(types, value))