PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` 3 ,[@sdZddlmZddlZdZdZdZdeZdeZ d Z d Z d eZ d eZ d eZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZdeZ d eZ!d!Z"d"eZ#d#eZ$d#eZ%d$eZ&d%eZ'd&eZ(d'eZ)d(eZ*d)eZ+d*d+Z,d,d-Z-d.d/Z.dS)0a 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 )unicode_literalsNz [\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(?: %(HEXDIG)s ){1,4}z/(?: (?: %(h16)s : %(h16)s ) | %(IPv4address)s )a(?: (?: %(h16)s : ){6} %(ls32)s | :: (?: %(h16)s : ){5} %(ls32)s | %(h16)s :: (?: %(h16)s : ){4} %(ls32)s | (?: %(h16)s : ) %(h16)s :: (?: %(h16)s : ){3} %(ls32)s | (?: %(h16)s : ){2} %(h16)s :: (?: %(h16)s : ){2} %(ls32)s | (?: %(h16)s : ){3} %(h16)s :: %(h16)s : %(ls32)s | (?: %(h16)s : ){4} %(h16)s :: %(ls32)s | (?: %(h16)s : ){5} %(h16)s :: %(h16)s | (?: %(h16)s : ){6} %(h16)s :: ) 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 )? )$cCstjt|tjS)N)rematchURIVERBOSE)urir "/usr/lib/python3.6/uri_validate.pyis_urisr cCstjt|tjS)N)rr URI_referencer)rr r r is_uri_referencesr cCstjt|tjS)N)rr absolute_URIr)rr r r is_absolute_urisr)/__doc__Z __future__rrZDIGITZALPHAZHEXDIGlocalsZ pct_encodedZ unreservedZ gen_delimsZ sub_delimsZpcharZreservedschemeZ dec_octetZ IPv4addressZh16Zls32Z IPv6addressZ IPvFutureZ IP_literalZreg_nameZuserinfohostZportZ authorityZsegmentZ segment_nzZ segment_nz_ncZ path_abemptyZ path_absoluteZ path_noschemeZ path_rootlessZ path_emptypathZqueryZfragmentZ hier_partZ relative_partZ relative_refrr rr r rr r r r  sX