
    j                          d dl mZ dedefdZy)    )Anyobjreturnc                     t        | t              r-| j                         D ci c]  \  }}|t        |       c}}S t        | t              r| D cg c]  }t        |       c}S | S c c}}w c c}w )ax  
    Creates a recursive shallow copy of a dictionary or list which may include other dictionaries
    or lists as values.

    Args:
        obj: The object to copy. Can be a dict, list, or any other type.

    Returns:
        A recursive shallow copy of the input object where dictionaries and lists are copied,
        but their non-container elements are referenced.
    )
isinstancedictitemsrecursive_shallow_copylist)r   kvitems       /Users/manta/Documents/Projects/TheRoad-I1/backend/.venv/lib/python3.12/site-packages/opik/message_processing/arguments_utils.pyr
   r
      sm     #t9<EA)!,,EE	C	9<=&t,== 
 F=s   A)A/N)typingr   r
        r   <module>r      s      r   