def enable(auto_colors=False, reset_atexit=False):
        """Enables color text with print() or sys.stdout.write() (stderr too).

        Keyword arguments:
        auto_colors -- automatically selects dark or light colors based on current terminal's background color. Only
            works with {autored} and related tags.
        reset_atexit -- resets original colors upon Python exit (in case you forget to reset it yourself with a closing
            tag).
        """
        if os.name != 'nt':
            return False

        # Overwrite stream references.
        if not isinstance(sys.stderr, _WindowsStream):
            sys.stderr.flush()
            sys.stderr = _WindowsStream(stderr=True)
        if not isinstance(sys.stdout, _WindowsStream):
            sys.stdout.flush()
            sys.stdout = _WindowsStream(stderr=False)
        if not isinstance(sys.stderr, _WindowsStream) and not isinstance(sys.stdout, _WindowsStream):
            return False

        # Automatically select which colors to display.
        bg_color = getattr(sys.stdout, 'default_bg', getattr(sys.stderr, 'default_bg', None))
        if auto_colors and bg_color is not None:
            set_light_background() if bg_color in (112, 96, 240, 176, 224, 208, 160) else set_dark_background()

        # Reset on exit if requested.
        if reset_atexit:
            atexit.register(lambda: Windows.disable())

        return True
Enables color text with print() or sys.stdout.write() (stderr too).

        Keyword arguments:
        auto_colors -- automatically selects dark or light colors based on current terminal's background color. Only
            works with {autored} and related tags.
        reset_atexit -- resets original colors upon Python exit (in case you forget to reset it yourself with a closing
            tag).