+
    Tj                     X    ^ RI t ^ RIHt ^ RIHt ^'t]3R ltR]! R4      ]3R ltR t	R# )	    N)ValidationError)gettext_lazyc                     \        V 4      V8  d   \        R V  R24      h\        P                  ! \	        \        P                  ! V 4      4      4      # )zUnable to convert z% to an IPv6 address (value too long).)len
ValueError	ipaddressIPv6Addressint)ip_str
max_lengths   &&F/var/www/idalgo/venv/lib/python3.14/site-packages/django/utils/ipv6.py_ipv6_address_from_strr   	   sK    
6{Z (MN
 	
   Y%:%:6%B!CDD    Fz!This is not a valid IPv6 address.c           	     :    \        W4      pT'       d(   TP                  '       d   \        TP                  4      # TP                  '       d   R\        TP                  4      ,          # \        T4      #   \         d    \        TRR\        R4      /R7      hi ; i)a  
Clean an IPv6 address string.

Raise ValidationError if the address is invalid.

Replace the longest continuous zero-sequence with "::", remove leading
zeroes, and make sure all hextets are lowercase.

Args:
    ip_str: A valid IPv6 address.
    unpack_ipv4: if an IPv4-mapped address is found,
    return the plain IPv4 address (default=False).
    error_message: An error message used in the ValidationError.

Return a compressed IPv6 address or the same value.
invalidprotocolIPv6)codeparamsz	::ffff:%s)r   r   r   _ipv4_mappedstr)r   unpack_ipv4error_messager   addrs   &&&& r   clean_ipv6_addressr      s    ,
%f9 t'''4##$$				S!1!1222t9  
	:qy2I
 	

s   A5 5%Bc                    \        V \        P                  4      '       d   R#  \        V 4       R#   \        \
        3 d     R# i ; i)z>
Return whether the `ip_addr` object is a valid IPv6 address.
TF)
isinstancer   r	   r   	TypeErrorr   )ip_addrs   &r   is_valid_ipv6_addressr!   6   sE     '90011w'  z" s   1 AA)
r   django.core.exceptionsr   django.utils.translationr   r   MAX_IPV6_ADDRESS_LENGTHr   r   r!    r   r   <module>r&      s<     2 6  /F E 78&	"J
r   