
    2i                       U d Z ddlmZ ddlZddlmZmZmZ ddlm	Z	 ddl
mZ ddlmZ e	egef   Zd	ed
<   e	egee   f   Zd	ed<   e	egef   Zd	ed<   e	egee   f   Zd	ed<    G d de      Z ee ej2                  d      j4                        Z ee ej2                  d      j4                        Z ee ej2                  d      j4                        Z ee ej2                  d      j4                        Z ee ej2                  d      j4                        Z ee ej2                  d      j4                        Z  ee ej2                  d      j4                        Z! ee ej2                  d      jD                        Z# ee ej2                  d      jD                        Z$ ee ej2                  d      jD                        Z% ee ej2                  d      jD                        Z& ee ej2                  d      jD                        Z' ee ej2                  d      jD                        Z( ee ej2                  d      jD                        Z) ej2                  d      Z* ee	egef   e*j4                        Z+ eee*jX                        Z-ddZ. ej2                  d      j5                  d      ej_                  d      k7  re.Z yy)z0
Utility functions to deal with binary structs.
    )annotationsN)Protocol	TypeAliascast)Callable   )errors)Bufferr   PackInt	UnpackInt	PackFloatUnpackFloatc                      e Zd ZddZy)	UnpackLenc                     y )N )selfdatastarts      N/var/www/html/secretsanta/venv/lib/python3.12/site-packages/psycopg/_struct.py__call__zUnpackLen.__call__   s        N)r   r
   r   z
int | Nonereturnz
tuple[int])__name__
__module____qualname__r   r   r   r   r   r      s    Jr   r   z!hz!Hz!iz!Iz!qz!fz!dc                ,    t        j                  d      )Nzcannot dump Float4: Python affected by bug #304. Note that the psycopg-c and psycopg-binary packages are not affected by this issue. See https://github.com/psycopg/psycopg/issues/304)eInterfaceError)xs    r   pack_float4_bug_304r!   /   s    


	= r   g      ?3f800000)r    floatr   bytes)0__doc__
__future__r   structtypingr   r   r   collections.abcr    r	   r   abcr
   intr$   r   __annotations__tupler   r#   r   r   r   Structpack	pack_int2
pack_uint2	pack_int4
pack_uint4	pack_int8pack_float4pack_float8unpackunpack_int2unpack_uint2unpack_int4unpack_uint4unpack_int8unpack_float4unpack_float8_struct_lenpack_lenunpack_from
unpack_lenr!   fromhexr   r   r   <module>rE      s   #  , , $  seUl+ +%* 45	9 5/	9 /!6(E%L"89Y 9K K -&---223	'=6==.334
-&---223	'=6==.334
-&---223	9mfmmD16679mfmmD16679mfmmD1889I}v}}T299:9mfmmD1889I}v}}T299:9mfmmD1889[-&--"5"<"<=[-&--"5"<"<=fmmD!#&(8(89)[445
 6==C EMM*$==%K >r   