code: def normalize_timestamp(timestamp: float) -> float:
      """Normalize millisecond and microsecond timestamps into normal timestamps."""
      if timestamp > MAX_TIMESTAMP:
          if timestamp < MAX_TIMESTAMP_MS:
              timestamp /= 1000
          elif timestamp < MAX_TIMESTAMP_US:
              timestamp /= 1_000_000
          else:
              raise ValueError(
                  f"The specified timestamp {timestamp!r} is too large."
              )
      return timestamp
  
file_path: arrow-py/arrow/util.py
imports: import datetime
  from typing import Any, Optional, cast
  from dateutil.rrule import WEEKLY, rrule
  from arrow.constants import MAX_ORDINAL, MAX_TIMESTAMP, MAX_TIMESTAMP_MS, MAX_TIMESTAMP_US, MIN_ORDINAL
label_desc: Use image node_id 4 for calling a global function with example usage: normalize_timestamp(timestamp) and returns: timestamp