def _astroid_bootstrapping():
<EOL>builder = InspectBuilder()<EOL>astroid_builtin = builder.inspect_build(builtins)<EOL>for cls, node_cls in node_classes.CONST_CLS.items():<EOL><INDENT>if cls is type(None):<EOL><INDENT>proxy = build_class("<STR_LIT>")<EOL>proxy.parent = astroid_builtin<EOL><DEDENT>elif cls is type(NotImplemented):<EOL><INDENT>proxy = build_class("<STR_LIT>")<EOL>proxy.parent = astroid_builtin<EOL><DEDENT>else:<EOL><INDENT>proxy = astroid_builtin.getattr(cls.__name__)[<NUM_LIT:0>]<EOL><DEDENT>if cls in (dict, list, set, tuple):<EOL><INDENT>node_cls._proxied = proxy<EOL><DEDENT>else:<EOL><INDENT>_CONST_PROXY[cls] = proxy<EOL><DEDENT><DEDENT>nodes.Const._proxied = property(_set_proxied)<EOL>_GeneratorType = nodes.ClassDef(<EOL>types.GeneratorType.__name__, types.GeneratorType.__doc__<EOL>)<EOL>_GeneratorType.parent = astroid_builtin<EOL>bases.Generator._proxied = _GeneratorType<EOL>builder.object_build(bases.Generator._proxied, types.GeneratorType)<EOL>if hasattr(types, "<STR_LIT>"):<EOL><INDENT>_AsyncGeneratorType = nodes.ClassDef(<EOL>types.AsyncGeneratorType.__name__, types.AsyncGeneratorType.__doc__<EOL>)<EOL>_AsyncGeneratorType.parent = astroid_builtin<EOL>bases.AsyncGenerator._proxied = _AsyncGeneratorType<EOL>builder.object_build(bases.AsyncGenerator._proxied, types.AsyncGeneratorType)<EOL><DEDENT>builtin_types = (<EOL>types.GetSetDescriptorType,<EOL>types.GeneratorType,<EOL>types.MemberDescriptorType,<EOL>type(None),<EOL>type(NotImplemented),<EOL>types.FunctionType,<EOL>types.MethodType,<EOL>types.BuiltinFunctionType,<EOL>types.ModuleType,<EOL>types.TracebackType,<EOL>)<EOL>for _type in builtin_types:<EOL><INDENT>if _type.__name__ not in astroid_builtin:<EOL><INDENT>cls = nodes.ClassDef(_type.__name__, _type.__doc__)<EOL>cls.parent = astroid_builtin<EOL>builder.object_build(cls, _type)<EOL>astroid_builtin[_type.__name__] = cls<EOL><DEDENT><DEDENT>
astroid bootstrapping the builtins module