docs: def isotime(s):
      "Convert timestamps in ISO8661 format to and from Unix time."
      if type(s) == type(1):
          return time.strftime("%Y-%m-%dT%H:%M:%S", time.gmtime(s))
      elif type(s) == type(1.0):
          date = int(s)
          msec = s - date
          date = time.strftime("%Y-%m-%dT%H:%M:%S", time.gmtime(s))
          return date + "." + repr(msec)[3:]
      elif type(s) == type("") or type(s) == type(u""):
          if s[-1] == "Z":
              s = s[:-1]
          if "." in s:
              (date, msec) = s.split(".")
          else:
              date = s
              msec = "0"
          # Note: no leap-second correction! 
          return calendar.timegm(time.strptime(date, "%Y-%m-%dT%H:%M:%S")) + float("0." + msec)
      else:
          raise TypeError