def positional(max_pos_args):
__ndb_debug__ = '<STR_LIT>'<EOL>def positional_decorator(wrapped):<EOL><INDENT>if not DEBUG:<EOL><INDENT>return wrapped<EOL><DEDENT>__ndb_debug__ = '<STR_LIT>'<EOL>@wrapping(wrapped)<EOL>def positional_wrapper(*args, **kwds):<EOL><INDENT>__ndb_debug__ = '<STR_LIT>'<EOL>if len(args) > max_pos_args:<EOL><INDENT>plural_s = '<STR_LIT>'<EOL>if max_pos_args != <NUM_LIT:1>:<EOL><INDENT>plural_s = '<STR_LIT:s>'<EOL><DEDENT>raise TypeError(<EOL>'<STR_LIT>' %<EOL>(wrapped.__name__, max_pos_args, plural_s, len(args)))<EOL><DEDENT>return wrapped(*args, **kwds)<EOL><DEDENT>return positional_wrapper<EOL><DEDENT>return positional_decorator<EOL>
A decorator to declare that only the first N arguments may be positional.

    Note that for methods, n includes 'self'.