HEX
Server: nginx/1.24.0
System: Linux ip-10-50-20-85 6.5.0-1022-aws #22~22.04.1-Ubuntu SMP Fri Jun 14 16:31:00 UTC 2024 x86_64
User: usefuloffices.org (1001)
PHP: 8.1.2-1ubuntu2.23
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/oauthlib/__pycache__/uri_validate.cpython-310.pyc
o

��$c��@spdZddlZdZdZdZde�Zde�ZdZd	Z	d
e�Z
de�Zde�Zd
e�Z
de�ZdZde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�Zde�ZdZde�Zd e�Z d e�Z!d!e�Z"d"e�Z#d#e�Z$d$e�Z%d%e�Z&d&e�Z'd'd(�Z(d)d*�Z)d+d,�Z*dS)-a
Regex for URIs

These regex are directly derived from the collected ABNF in RFC3986
(except for DIGIT, ALPHA and HEXDIG, defined by RFC2234).

They should be processed with re.VERBOSE.

Thanks Mark Nottingham for this code - https://gist.github.com/138549
�Nz[\x30-\x39]z[\x41-\x5A\x61-\x7A]z[\x30-\x39A-Fa-f]z %% %(HEXDIG)s %(HEXDIG)sz-(?: %(ALPHA)s | %(DIGIT)s | \- | \. | _ | ~ )z#(?: : | / | \? | \# | \[ | \] | @ )zI(?: ! | \$ | & | ' | \( | \) |
                     \* | \+ | , | ; | = )z?(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | : | @ )z%(?: %(gen_delims)s | %(sub_delims)s )z5%(ALPHA)s (?: %(ALPHA)s | %(DIGIT)s | \+ | \- | \. )*z�(?: %(DIGIT)s |
                    [\x31-\x39] %(DIGIT)s |
                    1 %(DIGIT)s{2} |
                    2 [\x30-\x34] %(DIGIT)s |
                    25 [\x30-\x35]
                )
z@%(dec_octet)s \. %(dec_octet)s \. %(dec_octet)s \. %(dec_octet)sz#([A-Fa-f0-9:]+[:$])[A-Fa-f0-9]{1,4}z;v %(HEXDIG)s+ \. (?: %(unreserved)s | %(sub_delims)s | : )+z+\[ (?: %(IPv6address)s | %(IPvFuture)s ) \]z8(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s )*z;(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | : )z5(?: %(IP_literal)s | %(IPv4address)s | %(reg_name)s )z(?: %(DIGIT)s )*z.(?: %(userinfo)s @)? %(host)s (?: : %(port)s)?z
%(pchar)s*z
%(pchar)s+z<(?: %(unreserved)s | %(pct_encoded)s | %(sub_delims)s | @ )+z(?: / %(segment)s )*z,/ (?: %(segment_nz)s (?: / %(segment)s )* )?z&%(segment_nz_nc)s (?: / %(segment)s )*z#%(segment_nz)s (?: / %(segment)s )*�z�(?: %(path_abempty)s |
               %(path_absolute)s |
               %(path_noscheme)s |
               %(path_rootless)s |
               %(path_empty)s
            )
z(?: %(pchar)s | / | \? )*z�(?: (?: // %(authority)s %(path_abempty)s ) |
                    %(path_absolute)s |
                    %(path_rootless)s |
                    %(path_empty)s
                )
z�(?: (?: // %(authority)s %(path_abempty)s ) |
                        %(path_absolute)s |
                        %(path_noscheme)s |
                        %(path_empty)s
                    )
z:%(relative_part)s (?: \? %(query)s)? (?: \# %(fragment)s)?zM^(?: %(scheme)s : %(hier_part)s (?: \? %(query)s )? (?: \# %(fragment)s )? )$z"^(?: %(URI)s | %(relative_ref)s )$z6^(?: %(scheme)s : %(hier_part)s (?: \? %(query)s )? )$cC�t�t|tj�S�N)�re�match�URI�VERBOSE��uri�r�7/usr/lib/python3/dist-packages/oauthlib/uri_validate.py�is_uri��r
cCrr)rr�
URI_referencerr	rrr�is_uri_reference�rrcCrr)rr�absolute_URIrr	rrr�is_absolute_uri�rr)+�__doc__r�DIGIT�ALPHA�HEXDIG�locals�pct_encoded�
unreserved�
gen_delims�
sub_delims�pchar�reserved�scheme�	dec_octet�IPv4address�IPv6address�	IPvFuture�
IP_literal�reg_name�userinfo�host�port�	authority�segment�
segment_nz�
segment_nz_nc�path_abempty�
path_absolute�
path_noscheme�
path_rootless�
path_empty�path�query�fragment�	hier_part�
relative_part�relative_refrrrr
rrrrrr�<module>sd






�
	













�

��