def update_exc(base_exceptions, *addition_dicts):
exc = dict(base_exceptions)<EOL>for additions in addition_dicts:<EOL><INDENT>for orth, token_attrs in additions.items():<EOL><INDENT>if not all(isinstance(attr[ORTH], unicode_) for attr in token_attrs):<EOL><INDENT>raise ValueError(Errors.E055.format(key=orth, orths=token_attrs))<EOL><DEDENT>described_orth = "<STR_LIT>".join(attr[ORTH] for attr in token_attrs)<EOL>if orth != described_orth:<EOL><INDENT>raise ValueError(Errors.E056.format(key=orth, orths=described_orth))<EOL><DEDENT><DEDENT>exc.update(additions)<EOL><DEDENT>exc = expand_exc(exc, "<STR_LIT:'>", "<STR_LIT>")<EOL>return exc<EOL>
Update and validate tokenizer exceptions. Will overwrite exceptions.

    base_exceptions (dict): Base exceptions.
    *addition_dicts (dict): Exceptions to add to the base dict, in order.
    RETURNS (dict): Combined tokenizer exceptions.