def __new__(mcs, name, bases, namespace):
<EOL>full_name = '<STR_LIT>' % (namespace['<STR_LIT>'], name)<EOL>namespace['<STR_LIT>'] = full_name<EOL>namespace.setdefault('<STR_LIT>', {})<EOL>for base in mcs.iter_bases(bases):<EOL><INDENT>mcs.inherit_dict(base, namespace, '<STR_LIT>')<EOL><DEDENT>cls = super(LimitMeta, mcs).__new__(mcs, name, bases, namespace)<EOL>if full_name not in mcs._registry:<EOL><INDENT>mcs._registry[full_name] = cls<EOL><DEDENT>return cls<EOL>
Generate a new Limit class.  Adds the full class name to the
namespace, for the benefit of dehydrate().  Also registers the
class in the registry, for the benefit of hydrate().