docs: def ttime(timestamp=None, tzone=None, fail="", fmt="%Y-%m-%d %H:%M:%S"):
      """Translate timestamp into human-readable: %Y-%m-%d %H:%M:%S.
  
      :param timestamp: the timestamp float, or `time.time()` by default.
      :param tzone: time compensation, int(-time.timezone / 3600) by default,
                  (can be set with Config.TIMEZONE).
      :param fail: while raising an exception, return it.
      :param fmt: %Y-%m-%d %H:%M:%S, %z not work.
      :rtype: str
  
      >>> ttime()
      2018-03-15 01:24:35
      >>> ttime(1486572818.421858323)
      2017-02-09 00:53:38
      """
      tzone = Config.TIMEZONE if tzone is None else tzone
      fix_tz = tzone * 3600
      if timestamp is None:
          timestamp = time.time()
      else:
          timestamp = float(timestamp)
          if 1e12 <= timestamp < 1e13:
              # Compatible timestamp with 13-digit milliseconds
              timestamp = timestamp / 1000
      try:
          timestamp = time.time() if timestamp is None else timestamp
          return time.strftime(fmt, time.gmtime(timestamp + fix_tz))
      except:
          import traceback
  
          traceback.print_exc()
          return fail