o
    bi                     @   s0  d dl Zzd dlZdZW n ey   dZdZY nw es;dZdZdZdZdZ	dZ
dZdZdZdZdZdZdZdd ZnWeedrMejejejdk rpdZd dlmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZ d	d
 Zn"dZd dlmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZ dd
 Zdd ZdS )    NTFc                 C   s   dS )NF objr   r   O/home/ubuntu/.local/lib/python3.10/site-packages/ray/_common/pydantic_compat.py<lambda>   s    r   __version__z2.0)	BaseModelExtraFieldNonNegativeFloatNonNegativeIntPositiveFloatPositiveIntPrivateAttr	StrictIntValidationErrorroot_validator	validatorc                 C   s
   t | tS )N)
issubclassr   r   r   r   r   is_subclass_of_base_model4   s   
r   c                 C   s,   ddl m} ddlm} t| |pt| |S )Nr   )r   )pydanticr   pydantic.v1r   )r   BaseModelV2BaseModelV1r   r   r   r   H   s   c                    sF   t sd S trddlm  nddlm  | j dd  fddd d S )Nr   
ModelFieldc              
   S   s*   | j | j| j| j| j| j| j| j| jd	S )N)	nametype_class_validatorsmodel_configdefaultdefault_factoryrequiredalias
field_info)	r   outer_type_r   r   r    r!   r"   r#   r$   )or   r   r   r   ]   s   z/register_pydantic_serializers.<locals>.<lambda>c                    s    di | S )Nr   r   )kwargsr   r   r   r   k   s    )custom_serializercustom_deserializer)PYDANTIC_INSTALLEDIS_PYDANTIC_2pydantic.v1.fieldsr   pydantic.fields _register_cloudpickle_serializer)serialization_contextr   r   r   register_pydantic_serializersO   s   

r0   )packaging.version	packagingr   r*   ImportErrorr+   r   r	   r
   r   r   r   r   r   r   r   r   r   r   hasattrversionparser   r   r0   r   r   r   r   <module>   sF   

8
8