JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr דg3 ddlZddlZddlZddlmZmZddlmZddlm Z dZ dZ ejdZ Gd d eZGd d eZGd deZGddeZdedefdZdededefdZdedefdZdedefdZdeeefdefdZdeeefdedefdZd1dededefdZdedefdZdedefd Zdeddfd!Z ded"edefd#Z!d1ded"ed$edefd%Z"deeee#fddfd&Z$dedefd'Z%deeee#fdefd(Z&d2d)ed*ed+edefd,Z' d3deeee#fd-ed.ed*ed+edef d/Z( d4deeee#fd-ed.ed*edef d0Z)y)5N)OptionalUnion)idnadata)intranges_contain sxn--u [.。.。]ceZdZdZy) IDNAErrorz5Base exception for all IDNA-encoding related problemsN__name__ __module__ __qualname____doc__8/opt/hc_python/lib/python3.12/site-packages/idna/core.pyr r s?rr ceZdZdZy) IDNABidiErrorz;Exception when bidirectional requirements are not satisfiedNr rrrrrsErrceZdZdZy)InvalidCodepointz ??rsc$|jdS)Npunycode)encoder(s r _punycoder-2s 88J rc$dj|S)NzU+{:04X})formatr,s r_unotr06s   Q rlabelc"t|dkDryy)N?FTlenr1s rvalid_label_lengthr7:s 5zB r trailing_dotc*t||rdndkDryy)NFTr4)r1r8s rvalid_string_lengthr<@s 5zLSc2 r check_ltrcd}t|dD]J\}}tj|}|dk(r$tdj t |||dvsId}L|s|sytj|d}|dvrd}n+|d k(rd}n#td j t |d}d}t|dD]\}}tj|}|rG|d vrtd j ||d vrd}n|dk7rd}|dvsN|s|}S||k7sYtd|dvrtdj ||dvrd}|dk7sd}|s tdy)NFrz1Unknown directionality in label {} at position {})RALANTr)r@rALz=First codepoint in label {} must be directionality L, R or AL) r@rArBENESCSETONBNNSMzGInvalid direction for codepoint at position {} in a right-to-left label)r@rArDrBrJ)rBrDz2Can not mix numeral types in a right-to-left label)rCrDrErFrGrHrIrJzGInvalid direction for codepoint at position {} in a left-to-right label)rCrDz0Label ends with illegal codepoint directionality) enumerater bidirectionalrr/repr) r1r= bidi_labelidxr directionrtl valid_ending number_types r check_bidirTFsJUA&R--b1 ? S Z Z[_`e[fhk lm m ) )J ' i))%(3IK c [bbcghmcnoppL!%KUA&R--b1  ! $$m$t$tux$yzz33# e#$ L(""+K"i/+,`aa PP#$m$t$tux$yzzK'# e#$ M'P NOO rcVtj|dddk(r tdy)NrMz0Label begins with an illegal combining characterT)rcategoryr r6s rcheck_initial_combinerrXs-E!H%a(C/JKK rc`|dddk(r td|ddk(s|ddk(r tdy ) Nz--z4Label has disallowed hyphens in 3rd and 4th positionr-z)Label must not start or end with a hyphenT)r r6s rcheck_hyphen_okr^sA QqzTNOO Qx3%)s*CDD rcLtjd||k7r tdy)NNFCz%Label must be in Normalization Form C)r normalizer r6s r check_nfcrbs(UE*e3?@@4rposct||}|dk(r|dkDr"tt||dz tk(ryd}t|dz ddD]Y}tj j t||}|tdk(r=|tdtd fvrd}nn|syd}t|dzt|D][}tj j t||}|tdk(r=|td td fvrd}|S|S|S|d k(r(|dkDr"tt||dz tk(ryyy) Ni rrTFr]TrCDr@i )r%r"_virama_combining_classranger joining_typesgetr5)r1rccp_valueoki joining_types rvalid_contextjrosb5:H6 7E#'N 348OO sQwB'A#1155c%(mDLs3x'#c(CH!55( sQwE +A#1155c%(mDLs3x'#c(CH!55  , 6 7E#'N 348OOr exceptionct||}|dk(rDd|cxkrt|dz kr,nyt||dz dk(rt||dzdk(ryy|dk(r2|t|dz kr t|dkDrt||dzdSy|d k(s|d k(r|dkDrt||dz d Sy|d k(r4|D].}|d k(r t|dst|ds t|ds.yyd|cxkrdkr#nn |D]}dt|cxkrdksyyd|cxkrdkr#ny|D]}dt|cxkrdksyyy)NrrlTFiuGreekiiHebrewi0u・HiraganaKatakanaHani`iiii)r%r5r')r1rcrprkrs rvalid_contextorys5:H6 s #SZ!^ #5q>"f,U37^1D1N V  Ua CJNeC!Gng6 6 V x61 7eC!Gnh7 7 V BX~"j)ZJ-G:VXZ_K`   ( #e #BB)6)* ( #e #  BB)6)* rc t|ttfr|jd}t |dk(r t dt |t|t|t|D]\}}t|}t|tjdr0t|tjdr? t||s1tdj!t#||dzt%|t|tjd r>t)||rtd j!t#||dzt%|t+d j!t#||dzt%|t-|y#t&$r2t dj!t#||dzt%|wxYw) Nzutf-8rz Empty LabelPVALIDCONTEXTJz*Joiner {} not allowed at position {} in {}rzdomain std3_rules transitionalc ddlm}d}t|D]\}}t|} ||dkr|ntj||dfdz }|d} d} t |dk(r|d} | d k(s| d k(r|r | d k(r |s| ||z }n*| | d k(s| d k(r|r| d k(r|r|| z }n| d k7r t tjd|S#t $r2tdjt||dzt|wxYw)zBRe-map the characters in the string according to UTS46 processing.r) uts46datar?ZNrZVrf3rVIr~r`) rrKr%bisect bisect_leftr5 IndexErrorrr/r0rMrra) rrrroutputrcchar code_pointuts46rowstatus replacements r uts46_remaprLs4$ Fv& TY   zC/?VEWEWXadnpsctEuxyEyzHa[F)-K8}!&qk # cM,cM*9L$(# &C- RU Zf+%3 l"''2   //  "?FFuZGXZ]`aZacghncop  s BC;C=strictuts46ct|ts t|d}|r t |||}d}g}|r|j d}nt j |}|r|dgk(r td|ddk(r|d=d}|D]+}t|}|r|j|"td |r|jd d j|}t||s td |S#t$r tdwxYw) NrzGshould pass a unicode string to the function rather than a byte string.F.r? Empty domainr]T Empty labelr.zDomain too long) rstrUnicodeDecodeErrorr rsplit_unicode_dots_rerappendjoinr<) r(rrrrr8resultlabelsr1s rr+r+ns a  gAwA :| 4L F !''* Vt^'' bzR 2J  5M MM! M* *   c &A q, /)** H5" gef f gs C''C<c t|ts t|d}|r t ||d}d}g}|st j |}n|j d}|r|dgk(r td|ds|d=d}|D]+}t|}|r|j|"td |r|jddj|S#t$r tdwxYw) NrzInvalid ASCII in A-labelFrr?rr]Tr) rrrr rrrrrr)r(rrrr8rrr1s rrrs 4!S!AwA :u -L F !''* Vt^'' ": 2J  5M MM! M* *   b 88F / 42334s C C )F)TF)FFFF)FFF)*rrertypingrrr?r intrangesrrgrcompilerrr rrrintr"rboolr'rr-r0r7r<rTrXr^rbroryrrrrrr+rrrrrs "(2:::;   I  y  i    @3@@@    S S eE3J/D uUCZ0 CcCdCtCL#$ 34ASATA )#)C)D)X'#'C'D'T'T$uS%23$$N#%&%UI-.3:000D0UX0H $  S% "#$ $  $  $  $  $ R  S% "#        r