<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def read_configs(__pkg: str, __name: str = 'config', *, local: bool = True) -> ConfigParser: """Process configuration file stack. We export the time parsing functionality of ``jnrbase`` as custom converters for :class:`configparser.ConfigParser`: =================== =========================================== Method Function =================== =========================================== ``.getdatetime()`` :func:`~jnrbase.iso_8601.parse_datetime` ``.gethumantime()`` :func:`~jnrbase.human_time.parse_timedelta` ``.gettimedelta()`` :func:`~jnrbase.iso_8601.parse_delta` =================== =========================================== Args: __pkg: Package name to use as base for config files __name: File name to search for within config directories local: Whether to include config files from current directory Returns: Parsed configuration files """

    configs = get_configs(__pkg, __name)
    if local:
        localrc = path.abspath('.{}rc'.format(__pkg))
        if path.exists(localrc):
            configs.append(localrc)

    cfg = ConfigParser(converters={
        'datetime': parse_datetime,
        'humandelta': parse_timedelta,
        'timedelta': parse_delta,
    })
    cfg.read(configs, 'utf-8')
    cfg.configs = configs

    if 'NO_COLOUR' in environ or 'NO_COLOR' in environ:
        cfg.colour = False
    elif __pkg in cfg:
        if 'colour' in cfg[__pkg]:
            cfg.colour = cfg[__pkg].getboolean('colour')
        if 'color' in cfg[__pkg]:
            cfg.colour = cfg[__pkg].getboolean('color')
    else:
        cfg.colour = True

    return cfg