code: def parse_human_datetime(human_readable: str) -> datetime:
      """Returns ``datetime.datetime`` from human readable strings"""
      x_periods = r"^\s*([0-9]+)\s+(second|minute|hour|day|week|month|quarter|year)s?\s*$"
      if re.search(x_periods, human_readable, re.IGNORECASE):
          raise TimeRangeAmbiguousError(human_readable)
      try:
          default = datetime(year=datetime.now().year, month=1, day=1)
          dttm = parse(human_readable, default=default)
      except (ValueError, OverflowError) as ex:
          cal = parsedatetime.Calendar()
          parsed_dttm, parsed_flags = cal.parseDT(human_readable)
          # 0 == not parsed at all
          if parsed_flags == 0:
              logger.debug(ex)
              raise TimeRangeParseFailError(human_readable) from ex
          # when time is not extracted, we 'reset to midnight'
          if parsed_flags & 2 == 0:
              parsed_dttm = parsed_dttm.replace(
                  hour=0, minute=0, second=0
              )
          dttm = dttm_from_timetuple(parsed_dttm.utctimetuple())
      return dttm
  
imports: import calendar
  import logging
  import re
  from datetime import datetime, timedelta
  from functools import lru_cache
  from time import struct_time
  from typing import Optional
  import pandas
  import parsedatetime
  from dateutil.parser import parse
  from dateutil.relativedelta import relativedelta
  from flask_babel import lazy_gettext
  from holidays import country_holidays
  from pyparsing import CaselessKeyword, Forward, Group, Optional, ParseException, ParserElement, ParseResults, pyparsing_common, quotedString, Suppress
  from superset.commands.chart.exceptions import TimeDeltaAmbiguousError, TimeRangeAmbiguousError, TimeRangeParseFailError
  from superset.constants import LRU_CACHE_MAX_SIZE, NO_TIME_RANGE
label_desc: Use image node_id 1 for calling a global function with example usage: parse_human_datetime(human_readable) and returns: dttm