def build_wasm_bindgen_attr(*args: Union[(str, None)], **kwargs: Union[(str, Iterable[str], None)]) -> str:
    args = list(args)
    for (key, value) in kwargs.items():
        if (not value):
            continue
        if isinstance(value, str):
            args.append(f'{key} = {value}')
        else:
            args.extend((f'{key} = {v}' for v in value))
    return f"#[wasm_bindgen({', '.join(filter(None, args))})]"
def build_wasm_bindgen_attr(*args: Union[(str, None)], **kwargs: Union[(str, Iterable[str], None)]) -> str:
    args = list(args)
    for (key, value) in kwargs.items():
        if (not value):
            continue
        if isinstance(value, str):
            args.append(f'{key} = {value}')
        else:
            args.extend((f'{key} = {v}' for v in value))
    return f"#[wasm_bindgen({', '.join(filter(None, args))})]"