Write a function to merge overlapping shifts for a group of Site Mechanical Engineers working across different time zones at A S S E M B L E D.
Each shift contains ISO 8601 start and end timestamps with UTC offsets. Return the union of all shifts as sorted, non-overlapping UTC intervals, merging shifts that overlap or touch. The input is a list of objects, and the output is a list of [start, end] timestamp pairs.
def merge_shifts(shifts):