def arguments_not_none(func):
def wrapper(*args, **kwargs):<EOL><INDENT>for arg in args:<EOL><INDENT>if arg is None:<EOL><INDENT>raise NullArgument()<EOL><DEDENT><DEDENT>for arg, val in kwargs.items():<EOL><INDENT>if val is None:<EOL><INDENT>raise NullArgument()<EOL><DEDENT><DEDENT>try:<EOL><INDENT>return func(*args, **kwargs)<EOL><DEDENT>except TypeError as ex:<EOL><INDENT>if any(statement in ex.args[<NUM_LIT:0>] for statement in ['<STR_LIT>',<EOL>'<STR_LIT>']):<EOL><INDENT>raise NullArgument('<STR_LIT>' + str(ex.args[<NUM_LIT:0>]))<EOL><DEDENT>else:<EOL><INDENT>raise<EOL><DEDENT><DEDENT><DEDENT>return wrapper<EOL>
decorator, to check if any arguments are None; raise exception if so