"""The asyncio package, tracking PEP 3156."""

import sys

from . import base_events, coroutines, events, exceptions, futures, locks, protocols, runners, queues, streams, subprocess, tasks, taskgroups, timeouts, threads, transports

# This relies on each of the submodules having an __all__ variable.
from .base_events import *
from .coroutines import *
from .events import *
from .exceptions import *
from .futures import *
from .locks import *
from .protocols import *
from .runners import *
from .queues import *
from .streams import *
from .subprocess import *
from .tasks import *
from .taskgroups import *
from .timeouts import *
from .threads import *
from .transports import *

__all__ = (list(base_events.__all__) + list(coroutines.__all__) +
           list(events.__all__) + list(exceptions.__all__) +
           list(futures.__all__) + list(locks.__all__) +
           list(protocols.__all__) + list(runners.__all__) +
           list(queues.__all__) + list(streams.__all__) +
           list(subprocess.__all__) + list(tasks.__all__) +
           list(taskgroups.__all__) + list(timeouts.__all__) +
           list(threads.__all__) + list(transports.__all__))

import platform

if sys.platform == "win32":
    from . import windows_events
    from . import windows_utils
    from .windows_events import *
    __all__ += windows_events.__all__
else:
    from . import unix_events
    from . import windows_utils
    from .unix_events import *
    __all__ += unix_events.__all__