3
b`l             	  @   s
-  d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZyd dljZW n ek
r   d dlZY nX yd dljZW n ek
r   d dlZY nX yd dljZ W n ek
r(   d dl!Z Y nX yd dlm"Z# W n" ek
r\   d dl"m"Z# Y nX yd dljZ$W n ek
r   d dl"Z$Y nX yd dl%j&Z'W n ek
r   d dl!Z'Y nX yd dl(j)Z*W n ek
r   d dl+Z*Y nX yd dl,j-Z.W n ek
r   d dl/Z.Y nX yd dl0j1Z2W n ek
rB   d dl3Z2Y nX ye2j4Z5W n e6k
"rH   dddddddd	d
ddddddddddddddddddddddddddddddddd d!d"d#d$d%d$d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>dd9d<d3d?d3d?d@dAdBdCd9dDdEdFdEdFdGdHdGdHdIdJdKdLdMdNdOdPdQdRdSdTdTdUdVdKdWdXdYdZdZdZd[dLd\d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dddddddddddddddddddddddddddddddddddddddddddddddddddMddddd\dddNdOddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddBdBdddddddddd ddddddddddddIdddd	d
dddddddddddddddDdddddddddd d!d"d"ddd d!dd#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3dĐd4d%d5d6d7d8d8d9d:d;d<d=d>d?d@dAdBddCd/dDdEdFdFdFdGdGdHd4dIdJdKdKdKdLdLdMdNdOdPdQdRdSdHdCdTdUdVdUdWdXdYdSd dHd)dZd[d,d\d]d^d_d`dadbdcd*d)d*dddedfd5dAdBdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{dtded|d}d~dddddddddddddddddd7ddVddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddUddddddddddÐddÐdĐdŐdƐdƐdddddǐdȐdɐdʐdːd̐d͐dΐdϐddrdѐdҐdӐdԐdՐd֐dאdؐdؐdِdڐdېdܐdݐdݐdސdߐdߐddddddddddddddddېddddddIdddddddddddddd dddddddddddd	d
dd
dddddddddddddddddDdd dddddddddddddddd d!d"d#d$dd%d"d dddd&d&dǐd'dݐd(d)d*d[d+d,d-d.d/d0d1d2d2d3d4d5d6d(d7d8d9d:d;d<d=d>d?dd(d@d/dAdBdddCd+dDdEdDdEdFdGdHdGdHdIdJdKdLdMdNdNd[dOdPdQdRdQdRdSdTdUdVdWdXdYdOdZd[dOdSd\dOd]d^d_d_dd`dadbd]dcdddedfdddedcdgdhdFdidjdkdldmdndodpdqdhdrdrd\dsddtdudvdwddidxdydzd{d|d}d|d}d~dddddddddddddddddddddddddddddddddddddddddddddddddZddddd;ddddddddddddddddddddÐdĐdŐddƐdǐdȐddYdʐdːd̐d͐dΐdddZdddϐddŐdАdѐdAdҐdӐdidԐdՐd+d[d+dϐd֐d-dאd-dؐdِdڐdېdܐdݐdސdߐdddԐddddΐd͐dddddddddddddd͐ddddddddӐddddddidԐdddddddՐdOdddddddd d ddddddddАdd\ddd]ddd	d^d	dd
ddddddddddddqdddϐdqd֐dddddddddddddd d!d"d#d#d#dd#d$d%ddڐd&d'd(d)ddud*d+d,d-d-d.d.d/d0d0d1d2d2dodؐd3d4d5d6d7d8d9d&d:d;d<d=d>d?d?d@dCdAddؐdBddWdCdDdEd3dDdFdGdHdDd;dIddJdKdLdLd9dMdNdOdPdQdRdSdPdTdTdUdVdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdgdhdididididjdkdldddmdndndodpdqdrdrdqdsdsdtdudvdwdwdxdydzd{d|d}d~d|ddddddddddydzdddddddddddddddVdUdddddjddddddldndwdrdqdxddsdudWdXddddddddddddddddddddddddddddddddddddddddddd^dPdddddddddddddddddddddddddddddddddddddddddddddddddÐdĐdÐdĐddddddŐdƐdǐdȐdɐdʐdːd̐d͐dΐdϐdАdѐdҐdӐdԐdՐd֐dאdؐdِdڐdېdܐdܐdݐdސdߐdސddddddddddddddddddddddddddddddddddddddddddddddɐdd dddddddddddddd	d
dddddddddddddddddddddddddcdddcdddddddd d!dd"d#d$d%d&d'd;d(d)d*dِd+d/d,d/d-d.dd/dXd0d1d2d2d2d3d4d2d5d5d6d7d8d8d9d:d;d<d=d>d:d;d<d:d>d<d?d>d@dAdBd?dCdDd6d@dAdBdEdEdFdGdHdIddIdId?dJdKdLdMdNdOdPdQdTdRdSdTdUdVd=dWdXddYdYdYdYdZd[d\d]d^d_d`dadbdcdaddddded_dfdgdhdidjdkd<d
dldmdndodpdqdrdsdRdpd.dpdtdudvdwdxdydzd{d|d}d~dudddddddddddddddddd|d֐d|ddddddlddddddadfd_dfdhddod~dddBdddldddddpdd2dddddddddddddddddddddddddddddddddZddddddvdddddddvddddddd ddddddddddÐdĐdŐdƐdǐdȐdɐdʐdːd̐d͐dYdΐd7dϐdddАdАdѐddPdPdӐdԐdՐdd֐dאdؐdِdڐd*dd@dcdfdېdܐdܐdݐdސdߐdߐddddddddddddddPddd@ddddddddddddddcddddd^ddddddddd d d dddddddrdrdfdddPdddddjdd'd.ddddd	d
dddddddd	dd	ddddddddddddʐddƐdǐdȐdʐd|dddddddddddddddddddd d!d"d#d$d%ddddd$d#d&d'd(d8d)ddd*d+d+d,d-d.d/dd0d1d2d3d4d5d6d7d8d9d:d:d:d;d<d=d=d9dd>d?d?d9dd@dAd@dAddEddd9dBdBddCdDdUdkdndEdFdGdHdIdҐdJdKdKdLd{d)dݐdMdddNdMdOd6dPdQdRdSdTdUdVdWdXdYdZd[d`dded\d]d\d]d^dadېd_d`dadbdcdddedddedfdgdhdidjdkdldmdndodpdodpdqdddrdsdsdtdudvdwdHdHddxdUdydedzd{d|d}d~dېdadېddhddbddkdddzdܐdgddddddd3dddddddddddddLdsddddddddddd'd+dIdbdddߐddddd=dېddddddddd`dddnddddddddd@dddd'dddېdddddIdddddddddddddodddddddddddddcdddedkddd]dddd\ddddfdddgdhd^d	dddidmdldndoddÐddÐdĐdŐdƐdǐdȐdɐdʐdʐdːd̐d͐dΐdϐdАdѐdҐdӐdԐdՐd֐dՐdאdؐdِdڐdېdܐdݐdސdߐdidddߐdddddfddddddZ5Y nX yd dl7j8Z9W n ek
"rv   d dl:Z9Y nX yd dlm;Z< W n$ ek
"r   d dlm;Z< Y nX yd dlm=Z> W n$ ek
"r   d dl!m=Z> Y nX yd dl?m@ZA W n$ ek
#r   d dl@m@ZA Y nX yd dl@mBZC W nV ek
#r   yd dl?mBZC W n, ek
#r   G dd deDZCY nX Y nX yd dlmEZE dd ZFW n" ek
#r   dd ZFY nX yd dlGjHZIW n ek
#r   d dlJZIY nX yeKZLW n eMk
$r   eNZLY nX y.d dlmOZP d dlmQZR d dlmSZT W nb ek
$r   eUe d$rre jVn
ejWdZVdd ZPddd ZRdddZTY nX yd dlmXZY W n& ek
$r   dddZYY nX yd dlmZZ[ W n. ek
%r*   G dd dej\Z[Y nX ye]Z^W n eMk
%rN   eNZ^Y nX ye_Z`W n eMk
%rr   eaZ`Y nX yd d	lmbZc W n$ ek
%r   d d
ldmeZc Y nX ejfjgZfG dd defjhZiy"ejdejfjgjk d dlmkZl W n$ emk
&r   d dlmnZl Y nX ejod  dk&r4dd ZpnXyefjkjqZrW n" e6k
&rb   dd ZrY nX dddZsdd Ztdd ZpeUefd&refjuZvndd Zvejodk &rʐdd Zwnd d Zwyd d!lmxZy W n6 ek
'r   dd#d$Zzdd%d&ZyY nX ej{d'k'r4ej|nej{Z}e}d(k'rTd)d* Z~n6yd d+lmZ~ W n" ek
'r   d,d* Z~Y nX yFejd-Zejee'rejed  eL'red  d-k'stejZW n* eefk
'r   dd/d0ZY nX d1d2 Zejodk(r8ejZejjZejfd3d4Zn^dd5d6Zejfd7d4Ze}d8k(rtd9d: Zn"e}dk(rd<d: ZnejjZe}d(k(rejodk (rd>d? ZnejjZejodk (rd@dA ZndBdA Zejodk )rejdCk)rdDdE ZnejZyeZW n eMk
)r@   eZY nX y dFdG Zef dHd i W n" emk
)r   dIdJ ZY nX dKd ZyeeeefZW n  eMk
)r   eeefZY nX yeefZW n eMk
)r   efZY nX ejodk *rddLdMZnejZdNdO ZeUedP*r6ejZn&ejdQdRdSgZddVdWZye	jd dXdY e	jZW n& emk
*r   ddZd[ZY nX ejodk*rd d\lmZ nd d]lmZ yejd^d  W nF emk
+r$   d_d` Zdadb ZG dcdd ddejZY nLX ejZejZej dek+rjejodk +rjG dfdd ddejZnejZyd dglmZ W nD ek
+r   yd dhl	mZ W n ek
+r   eZY nX Y nX ejodk +rdidj ZnejZej dkk,rejdk ,rdndo Zndpdo Zddqdrdddjdsdtdudvdodwddd:dWd6dEdxdydzd{d|d}d[dJd~d2dd&dAd?d4d*d0dMdd`dbddddd dddddddddddddOg8ZdS (      )unicode_literalsN)urlparse   Á   áu   Ău   ău   ∾u   ∿u   ∾̳   Â   â   ´u   Аu   а   Æ   æu   ⁡u   𝔄u   𝔞   À   àu   ℵu   Αu   αu   Āu   āu   ⨿&u   ⩓u   ∧u   ⩕u   ⩜u   ⩘u   ⩚u   ∠u   ⦤u   ∡u   ⦨u   ⦩u   ⦪u   ⦫u   ⦬u   ⦭u   ⦮u   ⦯u   ∟u   ⊾u   ⦝u   ∢   Åu   ⍼u   Ąu   ąu   𝔸u   𝕒u   ≈u   ⩯u   ⩰u   ≊u   ≋'   åu   𝒜u   𝒶u   ≔*u   ≍   Ã   ã   Ä   äu   ∳u   ⨑u   ≌u   ϶u   ‵u   ∽u   ⋍u   ∖u   ⫧u   ⊽u   ⌆u   ⌅u   ⎵u   ⎶u   Бu   бu   „u   ∵u   ⦰u   ℬu   Βu   βu   ℶu   ≬u   𝔅u   𝔟u   ⋂u   ◯u   ⋃u   ⨀u   ⨁u   ⨂u   ⨆u   ★u   ▽u   △u   ⨄u   ⋁u   ⋀u   ⤍u   ⧫u   ▪u   ▴u   ▾u   ◂u   ▸u   ␣u   ▒u   ░u   ▓u   █u   =⃥u   ≡⃥u   ⫭u   ⌐u   𝔹u   𝕓u   ⊥u   ⋈u   ⧉u   ╗u   ╖u   ╕u   ┐u   ╔u   ╓u   ╒u   ┌u   ═u   ─u   ╦u   ╤u   ╥u   ┬u   ╩u   ╧u   ╨u   ┴u   ⊟u   ⊞u   ⊠u   ╝u   ╜u   ╛u   ┘u   ╚u   ╙u   ╘u   └u   ║u   │u   ╬u   ╫u   ╪u   ┼u   ╣u   ╢u   ╡u   ┤u   ╠u   ╟u   ╞u   ├u   ˘   ¦u   𝒷u   ⁏\u   ⧅u   ⟈u   •u   ≎u   ⪮u   ≏u   Ću   ću   ⋒u   ∩u   ⩄u   ⩉u   ⩋u   ⩇u   ⩀u   ⅅu   ∩︀u   ⁁u   ˇu   ℭu   ⩍u   Ču   č   Ç   çu   Ĉu   ĉu   ∰u   ⩌u   ⩐u   Ċu   ċ   ¸u   ⦲   ¢   ·u   𝔠u   Чu   чu   ✓u   Χu   χu   ○u   ˆu   ≗u   ↺u   ↻u   ⊛u   ⊚u   ⊝u   ⊙   ®u   Ⓢu   ⊖u   ⊕u   ⊗u   ⧃u   ⨐u   ⫯u   ⧂u   ∲u   ”u   ’u   ♣u   ∷:u   ⩴,@u   ∁u   ∘u   ℂu   ≅u   ⩭u   ≡u   ∯u   ∮u   𝕔u   ∐   ©u   ℗u   ↵u   ⨯u   ✗u   𝒞u   𝒸u   ⫏u   ⫑u   ⫐u   ⫒u   ⋯u   ⤸u   ⤵u   ⋞u   ⋟u   ↶u   ⤽u   ⋓u   ∪u   ⩈u   ⩆u   ⩊u   ⊍u   ⩅u   ∪︀u   ↷u   ⤼u   ⋎u   ⋏   ¤u   ∱u   ⌭u   ‡u   †u   ℸu   ↡u   ⇓u   ↓u   ‐u   ⫤u   ⊣u   ⤏u   ˝u   Ďu   ďu   Дu   дu   ⅆu   ⇊u   ⤑u   ⩷   °u   ∇u   Δu   δu   ⦱u   ⥿u   𝔇u   𝔡u   ⥥u   ⇃u   ⇂u   ˙`u   ˜u   ⋄u   ♦   ¨u   ϝu   ⋲   ÷u   ⋇u   Ђu   ђu   ⌞u   ⌍$u   𝔻u   𝕕u   ⃜u   ≐u   ≑u   ∸u   ∔u   ⊡u   ⇐u   ⇔u   ⟸u   ⟺u   ⟹u   ⇒u   ⊨u   ⇑u   ⇕u   ∥u   ⤓u   ⇵u   ̑u   ⥐u   ⥞u   ↽u   ⥖u   ⥟u   ⇁u   ⥗u   ⊤u   ↧u   ⤐u   ⌟u   ⌌u   𝒟u   𝒹u   Ѕu   ѕu   ⧶u   Đu   đu   ⋱u   ▿u   ⥯u   ⦦u   Џu   џu   ⟿   É   éu   ⩮u   Ěu   ěu   ≖   Ê   êu   ≕u   Эu   эu   Ėu   ėu   ⅇu   ≒u   𝔈u   𝔢u   ⪚   È   èu   ⪖u   ⪘u   ⪙u   ∈u   ⏧u   ℓu   ⪕u   ⪗u   Ēu   ēu   ∅u   ◻u   ▫u    u    u    u   Ŋu   ŋu    u   Ęu   ęu   𝔼u   𝕖u   ⋕u   ⧣u   ⩱u   εu   Εu   ϵu   ≂u   ⩵=u   ≟u   ⇌u   ⩸u   ⧥u   ⥱u   ≓u   ℰu   ℯu   ⩳u   Ηu   η   Ð   ð   Ë   ëu   €!u   ∃u   Фu   фu   ♀u   ﬃu   ﬀu   ﬄu   𝔉u   𝔣u   ﬁu   ◼Zfju   ♭u   ﬂu   ▱u   ƒu   𝔽u   𝕗u   ∀u   ⋔u   ⫙u   ℱu   ⨍   ½u   ⅓   ¼u   ⅕u   ⅙u   ⅛u   ⅔u   ⅖   ¾u   ⅗u   ⅜u   ⅘u   ⅚u   ⅝u   ⅞u   ⁄u   ⌢u   𝒻u   ǵu   Γu   γu   Ϝu   ⪆u   Ğu   ğu   Ģu   Ĝu   ĝu   Гu   гu   Ġu   ġu   ≧u   ≥u   ⪌u   ⋛u   ⩾u   ⪩u   ⪀u   ⪂u   ⪄u   ⋛︀u   ⪔u   𝔊u   𝔤u   ⋙u   ≫u   ℷu   Ѓu   ѓu   ≷u   ⪥u   ⪒u   ⪤u   ⪊u   ≩u   ⪈u   ⋧u   𝔾u   𝕘u   ⪢u   ≳u   𝒢u   ℊu   ⪎u   ⪐>u   ⪧u   ⩺u   ⋗u   ⦕u   ⩼u   ⥸u   ≩︀u    u   ℋu   Ъu   ъu   ↔u   ⥈u   ↭^u   ℏu   Ĥu   ĥu   ♥u   …u   ⊹u   ℌu   𝔥u   ⤥u   ⤦u   ⇿u   ∻u   ↩u   ↪u   ℍu   𝕙u   ―u   𝒽u   Ħu   ħu   ⁃   Í   íu   ⁣   Î   îu   Иu   иu   İu   Еu   е   ¡u   ℑu   𝔦   Ì   ìu   ⅈu   ⨌u   ∭u   ⧜u   ℩u   Ĳu   ĳu   Īu   īu   ℐu   ıu   ⊷u   Ƶu   ℅u   ∞u   ⧝u   ∬u   ∫u   ⊺u   ℤu   ⨗u   ⨼u   ⁢u   Ёu   ёu   Įu   įu   𝕀u   𝕚u   Ιu   ι   ¿u   𝒾u   ⋵u   ⋹u   ⋴u   ⋳u   Ĩu   ĩu   Іu   і   Ï   ïu   Ĵu   ĵu   Йu   йu   𝔍u   𝔧u   ȷu   𝕁u   𝕛u   𝒥u   𝒿u   Јu   јu   Єu   єu   Κu   κu   ϰu   Ķu   ķu   Кu   кu   𝔎u   𝔨u   ĸu   Хu   хu   Ќu   ќu   𝕂u   𝕜u   𝒦u   𝓀u   ⇚u   Ĺu   ĺu   ⦴u   ℒu   Λu   λu   ⟪u   ⟨u   ⦑u   ⪅   «u   ↞u   ←u   ⇤u   ⤟u   ⤝u   ↫u   ⤹u   ⥳u   ↢u   ⪫u   ⤛u   ⤙u   ⪭u   ⪭︀u   ⤎u   ⤌u   ❲{[u   ⦋u   ⦏u   ⦍u   Ľu   ľu   Ļu   ļu   ⌈u   Лu   лu   ⤶u   “u   ⥧u   ⥋u   ↲u   ≦u   ≤u   ⇆u   ⟦u   ⥡u   ⥙u   ⌊u   ↼u   ⇇u   ⇋u   ⥎u   ↤u   ⥚u   ⋋u   ⊲u   ⧏u   ⊴u   ⥑u   ⥠u   ↿u   ⥘u   ⥒u   ⪋u   ⋚u   ⩽u   ⪨u   ⩿u   ⪁u   ⪃u   ⋚︀u   ⪓u   ⋖u   ≶u   ⪡u   ≲u   ⥼u   𝔏u   𝔩u   ⪑u   ⥢u   ⥪u   ▄u   Љu   љu   ⋘u   ≪u   ⥫u   ◺u   Ŀu   ŀu   ⎰u   ⪉u   ≨u   ⪇u   ⋦u   ⟬u   ⇽u   ⟵u   ⟷u   ⟼u   ⟶u   ↬u   ⦅u   𝕃u   𝕝u   ⨭u   ⨴u   ∗_u   ↙u   ↘u   ◊(u   ⦓u   ⥭u   ‎u   ⊿u   ‹u   𝓁u   ↰u   ⪍u   ⪏u   ‘u   ‚u   Łu   ł<u   ⪦u   ⩹u   ⋉u   ⥶u   ⩻u   ◃u   ⦖u   ⥊u   ⥦u   ≨︀   ¯u   ♂u   ✠u   ⤅u   ↦u   ↥u   ▮u   ⨩u   Мu   мu   —u   ∺u    u   ℳu   𝔐u   𝔪u   ℧   µu   ∣u   ⫰u   −u   ⨪u   ∓u   ⫛u   ⊧u   𝕄u   𝕞u   𝓂u   Μu   μu   ⊸u   Ńu   ńu   ∠⃒u   ≉u   ⩰̸u   ≋̸u   ŉu   ♮u   ℕ    u   ≎̸u   ≏̸u   ⩃u   Ňu   ňu   Ņu   ņu   ≇u   ⩭̸u   ⩂u   Нu   нu   –u   ≠u   ⤤u   ⇗u   ↗u   ≐̸u   ​u   ≢u   ⤨u   ≂̸
u   ∄u   𝔑u   𝔫u   ≧̸u   ≱u   ⩾̸u   ⋙̸u   ≵u   ≫⃒u   ≯u   ≫̸u   ⇎u   ↮u   ⫲u   ∋u   ⋼u   ⋺u   Њu   њu   ⇍u   ↚u   ‥u   ≦̸u   ≰u   ⩽̸u   ≮u   ⋘̸u   ≴u   ≪⃒u   ⋪u   ⋬u   ≪̸u   ∤u   ⁠u   𝕟   ¬u   ⫬u   ≭u   ∦u   ∉u   ≹u   ⋵̸u   ⋹̸u   ⋷u   ⋶u   ⧏̸u   ≸u   ⪢̸u   ⪡̸u   ∌u   ⋾u   ⋽u   ⊀u   ⪯̸u   ⋠u   ⋫u   ⧐̸u   ⋭u   ⊏̸u   ⋢u   ⊐̸u   ⋣u   ⊂⃒u   ⊈u   ⊁u   ⪰̸u   ⋡u   ≿̸u   ⊃⃒u   ⊉u   ≁u   ≄u   ⫽⃥u   ∂̸u   ⨔u   ⇏u   ↛u   ⤳̸u   ↝̸u   𝒩u   𝓃u   ⊄u   ⫅̸u   ⊅u   ⫆̸   Ñ   ñu   Νu   ν#u   №u    u   ≍⃒u   ⊯u   ⊮u   ⊭u   ⊬u   ≥⃒u   >⃒u   ⤄u   ⧞u   ⤂u   ≤⃒u   <⃒u   ⊴⃒u   ⤃u   ⊵⃒u   ∼⃒u   ⤣u   ⇖u   ↖u   ⤧   Ó   ó   Ô   ôu   Оu   оu   Őu   őu   ⨸u   ⦼u   Œu   œu   ⦿u   𝔒u   𝔬u   ˛   Ò   òu   ⧁u   ⦵u   Ωu   ⦾u   ⦻u   ‾u   ⧀u   Ōu   ōu   ωu   Οu   οu   ⦶u   𝕆u   𝕠u   ⦷u   ⦹u   ⩔u   ∨u   ⩝u   ℴ   ª   ºu   ⊶u   ⩖u   ⩗u   ⩛u   𝒪   Ø   øu   ⊘   Õ   õu   ⨷u   ⨶   Ö   öu   ⌽u   ⏞u   ⎴u   ⏜   ¶u   ⫳u   ⫽u   ∂u   Пu   п%.u   ‰u   ‱u   𝔓u   𝔭u   Φu   φu   ϕu   ☎u   Πu   πu   ϖu   ℎ+u   ⨣u   ⨢u   ⨥u   ⩲   ±u   ⨦u   ⨧u   ⨕u   ℙu   𝕡   £u   ⪻u   ≺u   ⪷u   ≼u   ⪳u   ⪯u   ≾u   ⪹u   ⪵u   ⋨u   ″u   ′u   ∏u   ⌮u   ⌒u   ⌓u   ∝u   ⊰u   𝒫u   𝓅u   Ψu   ψu    u   𝔔u   𝔮u   ℚu   𝕢u   ⁗u   𝒬u   𝓆u   ⨖?"u   ⇛u   ∽̱u   Ŕu   ŕu   √u   ⦳u   ⟫u   ⟩u   ⦒u   ⦥   »u   ↠u   →u   ⥵u   ⇥u   ⤠u   ⤳u   ⤞u   ⥅u   ⥴u   ⤖u   ↣u   ↝u   ⤜u   ⤚u   ∶u   ❳}]u   ⦌u   ⦎u   ⦐u   Řu   řu   Ŗu   ŗu   ⌉u   Рu   рu   ⤷u   ⥩u   ↳u   ℜu   ℛu   ℝu   ▭u   ⥽u   ⌋u   𝔯u   ⥤u   ⇀u   ⥬u   Ρu   ρu   ϱu   ⇄u   ⟧u   ⥝u   ⥕u   ⇉u   ⊢u   ⥛u   ⋌u   ⊳u   ⧐u   ⊵u   ⥏u   ⥜u   ↾u   ⥔u   ⥓u   ˚u   ‏u   ⎱u   ⫮u   ⟭u   ⇾u   ⦆u   𝕣u   ⨮u   ⨵u   ⥰)u   ⦔u   ⨒u   ›u   𝓇u   ↱u   ⋊u   ▹u   ⧎u   ⧴u   ⥨u   ℞u   Śu   śu   ⪼u   ≻u   ⪸u   Šu   šu   ≽u   ⪴u   ⪰u   Şu   şu   Ŝu   ŝu   ⪺u   ⪶u   ⋩u   ⨓u   ≿u   Сu   сu   ⋅u   ⩦u   ⇘   §;u   ⤩u   ✶u   𝔖u   𝔰u   ♯u   Щu   щu   Шu   шu   ↑   ­u   Σu   σu   ςu   ∼u   ⩪u   ≃u   ⪞u   ⪠u   ⪝u   ⪟u   ≆u   ⨤u   ⥲u   ⨳u   ⧤u   ⌣u   ⪪u   ⪬u   ⪬︀u   Ьu   ь/u   ⧄u   ⌿u   𝕊u   𝕤u   ♠u   ⊓u   ⊓︀u   ⊔u   ⊔︀u   ⊏u   ⊑u   ⊐u   ⊒u   □u   𝒮u   𝓈u   ⋆u   ☆u   ⋐u   ⊂u   ⪽u   ⫅u   ⊆u   ⫃u   ⫁u   ⫋u   ⊊u   ⪿u   ⥹u   ⫇u   ⫕u   ⫓u   ∑u   ♪   ¹   ²   ³u   ⋑u   ⊃u   ⪾u   ⫘u   ⫆u   ⊇u   ⫄u   ⟉u   ⫗u   ⥻u   ⫂u   ⫌u   ⊋u   ⫀u   ⫈u   ⫔u   ⫖u   ⇙u   ⤪   ß	u   ⌖u   Τu   τu   Ťu   ťu   Ţu   ţu   Тu   тu   ⃛u   ⌕u   𝔗u   𝔱u   ∴u   Θu   θu   ϑu     u       Þ   þ   ×u   ⨱u   ⨰u   ⌶u   ⫱u   𝕋u   𝕥u   ⫚u   ‴u   ™u   ▵u   ≜u   ◬u   ⨺u   ⨹u   ⧍u   ⨻u   ⏢u   𝒯u   𝓉u   Цu   цu   Ћu   ћu   Ŧu   ŧ   Ú   úu   ↟u   ⥉u   Ўu   ўu   Ŭu   ŭ   Û   ûu   Уu   уu   ⇅u   Űu   űu   ⥮u   ⥾u   𝔘u   𝔲   Ù   ùu   ⥣u   ▀u   ⌜u   ⌏u   ◸u   Ūu   ūu   ⏟u   ⏝u   ⊎u   Ųu   ųu   𝕌u   𝕦u   ⤒u   ↕u   ϒu   υu   Υu   ⇈u   ⌝u   ⌎u   Ůu   ůu   ◹u   𝒰u   𝓊u   ⋰u   Ũu   ũ   Ü   üu   ⦧u   ⦜u   ⊊︀u   ⫋︀u   ⊋︀u   ⫌︀u   ⫫u   ⫨u   ⫩u   Вu   вu   ⊫u   ⊩u   ⫦u   ⊻u   ≚u   ⋮u   ‖|u   ❘u   ≀u   𝔙u   𝔳u   𝕍u   𝕧u   𝒱u   𝓋u   ⊪u   ⦚u   Ŵu   ŵu   ⩟u   ≙u   ℘u   𝔚u   𝔴u   𝕎u   𝕨u   𝒲u   𝓌u   𝔛u   𝔵u   Ξu   ξu   ⋻u   𝕏u   𝕩u   𝒳u   𝓍   Ý   ýu   Яu   яu   Ŷu   ŷu   Ыu   ы   ¥u   𝔜u   𝔶u   Їu   їu   𝕐u   𝕪u   𝒴u   𝓎u   Юu   ю   ÿu   Ÿu   Źu   źu   Žu   žu   Зu   зu   Żu   żu   ℨu   Ζu   ζu   𝔷u   Жu   жu   ⇝u   𝕫u   𝒵u   𝓏u   ‍u   ‌(  ZAacuteZaacutezAacute;zaacute;zAbreve;zabreve;zac;zacd;zacE;ZAcircZacirczAcirc;zacirc;Zacutezacute;zAcy;zacy;ZAEligZaeligzAElig;zaelig;zaf;zAfr;zafr;ZAgraveZagravezAgrave;zagrave;zalefsym;zaleph;zAlpha;zalpha;zAmacr;zamacr;zamalg;ZAMPZampzAMP;zamp;zAnd;zand;zandand;zandd;z	andslope;zandv;zang;zange;zangle;zangmsd;z	angmsdaa;z	angmsdab;z	angmsdac;z	angmsdad;z	angmsdae;z	angmsdaf;z	angmsdag;z	angmsdah;zangrt;zangrtvb;z	angrtvbd;zangsph;zangst;zangzarr;zAogon;zaogon;zAopf;zaopf;zap;zapacir;zapE;zape;zapid;zapos;zApplyFunction;zapprox;z	approxeq;ZAringZaringzAring;zaring;zAscr;zascr;zAssign;zast;zasymp;zasympeq;ZAtildeZatildezAtilde;zatilde;ZAumlZaumlzAuml;zauml;z	awconint;zawint;z	backcong;zbackepsilon;z
backprime;zbacksim;z
backsimeq;z
Backslash;zBarv;zbarvee;zBarwed;zbarwed;z	barwedge;zbbrk;z	bbrktbrk;zbcong;zBcy;zbcy;zbdquo;zbecaus;zBecause;zbecause;zbemptyv;zbepsi;zbernou;zBernoullis;zBeta;zbeta;zbeth;zbetween;zBfr;zbfr;zbigcap;zbigcirc;zbigcup;zbigodot;z	bigoplus;z
bigotimes;z	bigsqcup;zbigstar;zbigtriangledown;zbigtriangleup;z	biguplus;zbigvee;z	bigwedge;zbkarow;zblacklozenge;zblacksquare;zblacktriangle;zblacktriangledown;zblacktriangleleft;zblacktriangleright;zblank;zblk12;zblk14;zblk34;zblock;zbne;zbnequiv;zbNot;zbnot;zBopf;zbopf;zbot;zbottom;zbowtie;zboxbox;zboxDL;zboxDl;zboxdL;zboxdl;zboxDR;zboxDr;zboxdR;zboxdr;zboxH;zboxh;zboxHD;zboxHd;zboxhD;zboxhd;zboxHU;zboxHu;zboxhU;zboxhu;z	boxminus;zboxplus;z	boxtimes;zboxUL;zboxUl;zboxuL;zboxul;zboxUR;zboxUr;zboxuR;zboxur;zboxV;zboxv;zboxVH;zboxVh;zboxvH;zboxvh;zboxVL;zboxVl;zboxvL;zboxvl;zboxVR;zboxVr;zboxvR;zboxvr;zbprime;zBreve;zbreve;Zbrvbarzbrvbar;zBscr;zbscr;zbsemi;zbsim;zbsime;zbsol;zbsolb;z	bsolhsub;zbull;zbullet;zbump;zbumpE;zbumpe;zBumpeq;zbumpeq;zCacute;zcacute;zCap;zcap;zcapand;z	capbrcup;zcapcap;zcapcup;zcapdot;zCapitalDifferentialD;zcaps;zcaret;zcaron;zCayleys;zccaps;zCcaron;zccaron;ZCcedilZccedilzCcedil;zccedil;zCcirc;zccirc;zCconint;zccups;zccupssm;zCdot;zcdot;Zcedilzcedil;zCedilla;zcemptyv;Zcentzcent;z
CenterDot;z
centerdot;zCfr;zcfr;zCHcy;zchcy;zcheck;z
checkmark;zChi;zchi;zcir;zcirc;zcirceq;zcirclearrowleft;zcirclearrowright;zcircledast;zcircledcirc;zcircleddash;z
CircleDot;z	circledR;z	circledS;zCircleMinus;zCirclePlus;zCircleTimes;zcirE;zcire;z	cirfnint;zcirmid;zcirscir;zClockwiseContourIntegral;zCloseCurlyDoubleQuote;zCloseCurlyQuote;zclubs;z	clubsuit;zColon;zcolon;zColone;zcolone;zcoloneq;zcomma;zcommat;zcomp;zcompfn;zcomplement;z
complexes;zcong;zcongdot;z
Congruent;zConint;zconint;zContourIntegral;zCopf;zcopf;zcoprod;z
Coproduct;ZCOPYcopyzCOPY;zcopy;zcopysr;z CounterClockwiseContourIntegral;zcrarr;zCross;zcross;zCscr;zcscr;zcsub;zcsube;zcsup;zcsupe;zctdot;zcudarrl;zcudarrr;zcuepr;zcuesc;zcularr;zcularrp;zCup;zcup;z	cupbrcap;zCupCap;zcupcap;zcupcup;zcupdot;zcupor;zcups;zcurarr;zcurarrm;zcurlyeqprec;zcurlyeqsucc;z	curlyvee;zcurlywedge;Zcurrenzcurren;zcurvearrowleft;zcurvearrowright;zcuvee;zcuwed;z	cwconint;zcwint;zcylcty;zDagger;zdagger;zdaleth;zDarr;zdArr;zdarr;zdash;zDashv;zdashv;zdbkarow;zdblac;zDcaron;zdcaron;zDcy;zdcy;zDD;zdd;zddagger;zddarr;z	DDotrahd;zddotseq;Zdegzdeg;zDel;zDelta;zdelta;zdemptyv;zdfisht;zDfr;zdfr;zdHar;zdharl;zdharr;zDiacriticalAcute;zDiacriticalDot;zDiacriticalDoubleAcute;zDiacriticalGrave;zDiacriticalTilde;zdiam;zDiamond;zdiamond;zdiamondsuit;zdiams;zdie;zDifferentialD;zdigamma;zdisin;zdiv;Zdividezdivide;zdivideontimes;zdivonx;zDJcy;zdjcy;zdlcorn;zdlcrop;zdollar;zDopf;zdopf;zDot;zdot;zDotDot;zdoteq;z	doteqdot;z	DotEqual;z	dotminus;zdotplus;z
dotsquare;zdoublebarwedge;zDoubleContourIntegral;z
DoubleDot;zDoubleDownArrow;zDoubleLeftArrow;zDoubleLeftRightArrow;zDoubleLeftTee;zDoubleLongLeftArrow;zDoubleLongLeftRightArrow;zDoubleLongRightArrow;zDoubleRightArrow;zDoubleRightTee;zDoubleUpArrow;zDoubleUpDownArrow;zDoubleVerticalBar;z
DownArrow;z
Downarrow;z
downarrow;zDownArrowBar;zDownArrowUpArrow;z
DownBreve;zdowndownarrows;zdownharpoonleft;zdownharpoonright;zDownLeftRightVector;zDownLeftTeeVector;zDownLeftVector;zDownLeftVectorBar;zDownRightTeeVector;zDownRightVector;zDownRightVectorBar;zDownTee;zDownTeeArrow;z	drbkarow;zdrcorn;zdrcrop;zDscr;zdscr;zDScy;zdscy;zdsol;zDstrok;zdstrok;zdtdot;zdtri;zdtrif;zduarr;zduhar;zdwangle;zDZcy;zdzcy;z	dzigrarr;ZEacuteZeacutezEacute;zeacute;zeaster;zEcaron;zecaron;zecir;ZEcircZecirczEcirc;zecirc;zecolon;zEcy;zecy;zeDDot;zEdot;zeDot;zedot;zee;zefDot;zEfr;zefr;zeg;ZEgraveZegravezEgrave;zegrave;zegs;zegsdot;zel;zElement;z	elinters;zell;zels;zelsdot;zEmacr;zemacr;zempty;z	emptyset;zEmptySmallSquare;zemptyv;zEmptyVerySmallSquare;zemsp13;zemsp14;zemsp;zENG;zeng;zensp;zEogon;zeogon;zEopf;zeopf;zepar;zeparsl;zeplus;zepsi;zEpsilon;zepsilon;zepsiv;zeqcirc;zeqcolon;zeqsim;zeqslantgtr;zeqslantless;zEqual;zequals;zEqualTilde;zequest;zEquilibrium;zequiv;zequivDD;z	eqvparsl;zerarr;zerDot;zEscr;zescr;zesdot;zEsim;zesim;zEta;zeta;ZETHZethzETH;zeth;ZEumlZeumlzEuml;zeuml;zeuro;zexcl;zexist;zExists;zexpectation;zExponentialE;zexponentiale;zfallingdotseq;zFcy;zfcy;zfemale;zffilig;zfflig;zffllig;zFfr;zffr;zfilig;zFilledSmallSquare;zFilledVerySmallSquare;zfjlig;zflat;zfllig;zfltns;zfnof;zFopf;zfopf;zForAll;zforall;zfork;zforkv;zFouriertrf;z	fpartint;Zfrac12zfrac12;zfrac13;Zfrac14zfrac14;zfrac15;zfrac16;zfrac18;zfrac23;zfrac25;Zfrac34zfrac34;zfrac35;zfrac38;zfrac45;zfrac56;zfrac58;zfrac78;zfrasl;zfrown;zFscr;zfscr;zgacute;zGamma;zgamma;zGammad;zgammad;zgap;zGbreve;zgbreve;zGcedil;zGcirc;zgcirc;zGcy;zgcy;zGdot;zgdot;zgE;zge;zgEl;zgel;zgeq;zgeqq;z	geqslant;zges;zgescc;zgesdot;zgesdoto;z	gesdotol;zgesl;zgesles;zGfr;zgfr;zGg;zgg;zggg;zgimel;zGJcy;zgjcy;zgl;zgla;zglE;zglj;zgnap;z	gnapprox;zgnE;zgne;zgneq;zgneqq;zgnsim;zGopf;zgopf;zgrave;zGreaterEqual;zGreaterEqualLess;zGreaterFullEqual;zGreaterGreater;zGreaterLess;zGreaterSlantEqual;zGreaterTilde;zGscr;zgscr;zgsim;zgsime;zgsiml;ZGTgtzGT;zGt;zgt;zgtcc;zgtcir;zgtdot;zgtlPar;zgtquest;z
gtrapprox;zgtrarr;zgtrdot;z
gtreqless;zgtreqqless;zgtrless;zgtrsim;z
gvertneqq;zgvnE;zHacek;zhairsp;zhalf;zhamilt;zHARDcy;zhardcy;zhArr;zharr;zharrcir;zharrw;zHat;zhbar;zHcirc;zhcirc;zhearts;z
heartsuit;zhellip;zhercon;zHfr;zhfr;zHilbertSpace;z	hksearow;z	hkswarow;zhoarr;zhomtht;zhookleftarrow;zhookrightarrow;zHopf;zhopf;zhorbar;zHorizontalLine;zHscr;zhscr;zhslash;zHstrok;zhstrok;zHumpDownHump;z
HumpEqual;zhybull;zhyphen;ZIacuteZiacutezIacute;ziacute;zic;ZIcircZicirczIcirc;zicirc;zIcy;zicy;zIdot;zIEcy;ziecy;Ziexclziexcl;ziff;zIfr;zifr;ZIgraveZigravezIgrave;zigrave;zii;ziiiint;ziiint;ziinfin;ziiota;zIJlig;zijlig;zIm;zImacr;zimacr;zimage;zImaginaryI;z	imagline;z	imagpart;zimath;zimof;zimped;zImplies;zin;zincare;zinfin;z	infintie;zinodot;zInt;zint;zintcal;z	integers;z	Integral;z	intercal;zIntersection;z	intlarhk;zintprod;zInvisibleComma;zInvisibleTimes;zIOcy;ziocy;zIogon;ziogon;zIopf;ziopf;zIota;ziota;ziprod;Ziquestziquest;zIscr;ziscr;zisin;zisindot;zisinE;zisins;zisinsv;zisinv;zit;zItilde;zitilde;zIukcy;ziukcy;ZIumlZiumlzIuml;ziuml;zJcirc;zjcirc;zJcy;zjcy;zJfr;zjfr;zjmath;zJopf;zjopf;zJscr;zjscr;zJsercy;zjsercy;zJukcy;zjukcy;zKappa;zkappa;zkappav;zKcedil;zkcedil;zKcy;zkcy;zKfr;zkfr;zkgreen;zKHcy;zkhcy;zKJcy;zkjcy;zKopf;zkopf;zKscr;zkscr;zlAarr;zLacute;zlacute;z	laemptyv;zlagran;zLambda;zlambda;zLang;zlang;zlangd;zlangle;zlap;zLaplacetrf;Zlaquozlaquo;zLarr;zlArr;zlarr;zlarrb;zlarrbfs;zlarrfs;zlarrhk;zlarrlp;zlarrpl;zlarrsim;zlarrtl;zlat;zlAtail;zlatail;zlate;zlates;zlBarr;zlbarr;zlbbrk;zlbrace;zlbrack;zlbrke;zlbrksld;zlbrkslu;zLcaron;zlcaron;zLcedil;zlcedil;zlceil;zlcub;zLcy;zlcy;zldca;zldquo;zldquor;zldrdhar;z	ldrushar;zldsh;zlE;zle;zLeftAngleBracket;z
LeftArrow;z
Leftarrow;z
leftarrow;zLeftArrowBar;zLeftArrowRightArrow;zleftarrowtail;zLeftCeiling;zLeftDoubleBracket;zLeftDownTeeVector;zLeftDownVector;zLeftDownVectorBar;z
LeftFloor;zleftharpoondown;zleftharpoonup;zleftleftarrows;zLeftRightArrow;zLeftrightarrow;zleftrightarrow;zleftrightarrows;zleftrightharpoons;zleftrightsquigarrow;zLeftRightVector;zLeftTee;zLeftTeeArrow;zLeftTeeVector;zleftthreetimes;zLeftTriangle;zLeftTriangleBar;zLeftTriangleEqual;zLeftUpDownVector;zLeftUpTeeVector;zLeftUpVector;zLeftUpVectorBar;zLeftVector;zLeftVectorBar;zlEg;zleg;zleq;zleqq;z	leqslant;zles;zlescc;zlesdot;zlesdoto;z	lesdotor;zlesg;zlesges;zlessapprox;zlessdot;z
lesseqgtr;zlesseqqgtr;zLessEqualGreater;zLessFullEqual;zLessGreater;zlessgtr;z	LessLess;zlesssim;zLessSlantEqual;z
LessTilde;zlfisht;zlfloor;zLfr;zlfr;zlg;zlgE;zlHar;zlhard;zlharu;zlharul;zlhblk;zLJcy;zljcy;zLl;zll;zllarr;z	llcorner;zLleftarrow;zllhard;zlltri;zLmidot;zlmidot;zlmoust;zlmoustache;zlnap;z	lnapprox;zlnE;zlne;zlneq;zlneqq;zlnsim;zloang;zloarr;zlobrk;zLongLeftArrow;zLongleftarrow;zlongleftarrow;zLongLeftRightArrow;zLongleftrightarrow;zlongleftrightarrow;zlongmapsto;zLongRightArrow;zLongrightarrow;zlongrightarrow;zlooparrowleft;zlooparrowright;zlopar;zLopf;zlopf;zloplus;zlotimes;zlowast;zlowbar;zLowerLeftArrow;zLowerRightArrow;zloz;zlozenge;zlozf;zlpar;zlparlt;zlrarr;z	lrcorner;zlrhar;zlrhard;zlrm;zlrtri;zlsaquo;zLscr;zlscr;zLsh;zlsh;zlsim;zlsime;zlsimg;zlsqb;zlsquo;zlsquor;zLstrok;zlstrok;ZLTltzLT;zLt;zlt;zltcc;zltcir;zltdot;zlthree;zltimes;zltlarr;zltquest;zltri;zltrie;zltrif;zltrPar;z	lurdshar;zluruhar;z
lvertneqq;zlvnE;Zmacrzmacr;zmale;zmalt;zmaltese;zMap;zmap;zmapsto;zmapstodown;zmapstoleft;z	mapstoup;zmarker;zmcomma;zMcy;zmcy;zmdash;zmDDot;zmeasuredangle;zMediumSpace;z
Mellintrf;zMfr;zmfr;zmho;microzmicro;zmid;zmidast;zmidcir;Zmiddotzmiddot;zminus;zminusb;zminusd;zminusdu;z
MinusPlus;zmlcp;zmldr;zmnplus;zmodels;zMopf;zmopf;zmp;zMscr;zmscr;zmstpos;zMu;zmu;z	multimap;zmumap;znabla;zNacute;znacute;znang;znap;znapE;znapid;znapos;znapprox;znatur;znatural;z	naturals;Znbspznbsp;znbump;znbumpe;zncap;zNcaron;zncaron;zNcedil;zncedil;zncong;z	ncongdot;zncup;zNcy;zncy;zndash;zne;znearhk;zneArr;znearr;znearrow;znedot;zNegativeMediumSpace;zNegativeThickSpace;zNegativeThinSpace;zNegativeVeryThinSpace;znequiv;znesear;znesim;zNestedGreaterGreater;zNestedLessLess;zNewLine;znexist;znexists;zNfr;znfr;zngE;znge;zngeq;zngeqq;z
ngeqslant;znges;znGg;zngsim;znGt;zngt;zngtr;znGtv;znhArr;znharr;znhpar;zni;znis;znisd;zniv;zNJcy;znjcy;znlArr;znlarr;znldr;znlE;znle;znLeftarrow;znleftarrow;znLeftrightarrow;znleftrightarrow;znleq;znleqq;z
nleqslant;znles;znless;znLl;znlsim;znLt;znlt;znltri;znltrie;znLtv;znmid;zNoBreak;zNonBreakingSpace;zNopf;znopf;notzNot;znot;zNotCongruent;z
NotCupCap;zNotDoubleVerticalBar;zNotElement;z	NotEqual;zNotEqualTilde;z
NotExists;zNotGreater;zNotGreaterEqual;zNotGreaterFullEqual;zNotGreaterGreater;zNotGreaterLess;zNotGreaterSlantEqual;zNotGreaterTilde;zNotHumpDownHump;zNotHumpEqual;znotin;z	notindot;znotinE;znotinva;znotinvb;znotinvc;zNotLeftTriangle;zNotLeftTriangleBar;zNotLeftTriangleEqual;zNotLess;zNotLessEqual;zNotLessGreater;zNotLessLess;zNotLessSlantEqual;zNotLessTilde;zNotNestedGreaterGreater;zNotNestedLessLess;znotni;znotniva;znotnivb;znotnivc;zNotPrecedes;zNotPrecedesEqual;zNotPrecedesSlantEqual;zNotReverseElement;zNotRightTriangle;zNotRightTriangleBar;zNotRightTriangleEqual;zNotSquareSubset;zNotSquareSubsetEqual;zNotSquareSuperset;zNotSquareSupersetEqual;z
NotSubset;zNotSubsetEqual;zNotSucceeds;zNotSucceedsEqual;zNotSucceedsSlantEqual;zNotSucceedsTilde;zNotSuperset;zNotSupersetEqual;z	NotTilde;zNotTildeEqual;zNotTildeFullEqual;zNotTildeTilde;zNotVerticalBar;znpar;z
nparallel;znparsl;znpart;znpolint;znpr;znprcue;znpre;znprec;znpreceq;znrArr;znrarr;znrarrc;znrarrw;znRightarrow;znrightarrow;znrtri;znrtrie;znsc;znsccue;znsce;zNscr;znscr;z
nshortmid;znshortparallel;znsim;znsime;znsimeq;znsmid;znspar;znsqsube;znsqsupe;znsub;znsubE;znsube;znsubset;z
nsubseteq;znsubseteqq;znsucc;znsucceq;znsup;znsupE;znsupe;znsupset;z
nsupseteq;znsupseteqq;zntgl;ZNtildeZntildezNtilde;zntilde;zntlg;zntriangleleft;zntrianglelefteq;zntriangleright;zntrianglerighteq;zNu;znu;znum;znumero;znumsp;znvap;znVDash;znVdash;znvDash;znvdash;znvge;znvgt;znvHarr;znvinfin;znvlArr;znvle;znvlt;znvltrie;znvrArr;znvrtrie;znvsim;znwarhk;znwArr;znwarr;znwarrow;znwnear;ZOacuteZoacutezOacute;zoacute;zoast;zocir;ZOcircZocirczOcirc;zocirc;zOcy;zocy;zodash;zOdblac;zodblac;zodiv;zodot;zodsold;zOElig;zoelig;zofcir;zOfr;zofr;zogon;ZOgraveZogravezOgrave;zograve;zogt;zohbar;zohm;zoint;zolarr;zolcir;zolcross;zoline;zolt;zOmacr;zomacr;zOmega;zomega;zOmicron;zomicron;zomid;zominus;zOopf;zoopf;zopar;zOpenCurlyDoubleQuote;zOpenCurlyQuote;zoperp;zoplus;zOr;zor;zorarr;zord;zorder;zorderof;Zordfzordf;Zordmzordm;zorigof;zoror;zorslope;zorv;zoS;zOscr;zoscr;ZOslashZoslashzOslash;zoslash;zosol;ZOtildeZotildezOtilde;zotilde;zOtimes;zotimes;z	otimesas;ZOumlZoumlzOuml;zouml;zovbar;zOverBar;z
OverBrace;zOverBracket;zOverParenthesis;zpar;Zparazpara;z	parallel;zparsim;zparsl;zpart;z	PartialD;zPcy;zpcy;zpercnt;zperiod;zpermil;zperp;zpertenk;zPfr;zpfr;zPhi;zphi;zphiv;zphmmat;zphone;zPi;zpi;z
pitchfork;zpiv;zplanck;zplanckh;zplankv;zplus;z	plusacir;zplusb;zpluscir;zplusdo;zplusdu;zpluse;z
PlusMinus;Zplusmnzplusmn;zplussim;zplustwo;zpm;zPoincareplane;z	pointint;zPopf;zpopf;Zpoundzpound;zPr;zpr;zprap;zprcue;zprE;zpre;zprec;zprecapprox;zpreccurlyeq;z	Precedes;zPrecedesEqual;zPrecedesSlantEqual;zPrecedesTilde;zpreceq;zprecnapprox;z	precneqq;z	precnsim;zprecsim;zPrime;zprime;zprimes;zprnap;zprnE;zprnsim;zprod;zProduct;z	profalar;z	profline;z	profsurf;zprop;zProportion;zProportional;zpropto;zprsim;zprurel;zPscr;zpscr;zPsi;zpsi;zpuncsp;zQfr;zqfr;zqint;zQopf;zqopf;zqprime;zQscr;zqscr;zquaternions;zquatint;zquest;zquesteq;ZQUOTZquotzQUOT;zquot;zrAarr;zrace;zRacute;zracute;zradic;z	raemptyv;zRang;zrang;zrangd;zrange;zrangle;Zraquozraquo;zRarr;zrArr;zrarr;zrarrap;zrarrb;zrarrbfs;zrarrc;zrarrfs;zrarrhk;zrarrlp;zrarrpl;zrarrsim;zRarrtl;zrarrtl;zrarrw;zrAtail;zratail;zratio;z
rationals;zRBarr;zrBarr;zrbarr;zrbbrk;zrbrace;zrbrack;zrbrke;zrbrksld;zrbrkslu;zRcaron;zrcaron;zRcedil;zrcedil;zrceil;zrcub;zRcy;zrcy;zrdca;zrdldhar;zrdquo;zrdquor;zrdsh;zRe;zreal;zrealine;z	realpart;zreals;zrect;ZREGZregzREG;zreg;zReverseElement;zReverseEquilibrium;zReverseUpEquilibrium;zrfisht;zrfloor;zRfr;zrfr;zrHar;zrhard;zrharu;zrharul;zRho;zrho;zrhov;zRightAngleBracket;zRightArrow;zRightarrow;zrightarrow;zRightArrowBar;zRightArrowLeftArrow;zrightarrowtail;zRightCeiling;zRightDoubleBracket;zRightDownTeeVector;zRightDownVector;zRightDownVectorBar;zRightFloor;zrightharpoondown;zrightharpoonup;zrightleftarrows;zrightleftharpoons;zrightrightarrows;zrightsquigarrow;z	RightTee;zRightTeeArrow;zRightTeeVector;zrightthreetimes;zRightTriangle;zRightTriangleBar;zRightTriangleEqual;zRightUpDownVector;zRightUpTeeVector;zRightUpVector;zRightUpVectorBar;zRightVector;zRightVectorBar;zring;zrisingdotseq;zrlarr;zrlhar;zrlm;zrmoust;zrmoustache;zrnmid;zroang;zroarr;zrobrk;zropar;zRopf;zropf;zroplus;zrotimes;zRoundImplies;zrpar;zrpargt;z	rppolint;zrrarr;zRrightarrow;zrsaquo;zRscr;zrscr;zRsh;zrsh;zrsqb;zrsquo;zrsquor;zrthree;zrtimes;zrtri;zrtrie;zrtrif;z	rtriltri;zRuleDelayed;zruluhar;zrx;zSacute;zsacute;zsbquo;zSc;zsc;zscap;zScaron;zscaron;zsccue;zscE;zsce;zScedil;zscedil;zScirc;zscirc;zscnap;zscnE;zscnsim;z	scpolint;zscsim;zScy;zscy;zsdot;zsdotb;zsdote;zsearhk;zseArr;zsearr;zsearrow;Zsectzsect;zsemi;zseswar;z	setminus;zsetmn;zsext;zSfr;zsfr;zsfrown;zsharp;zSHCHcy;zshchcy;zSHcy;zshcy;zShortDownArrow;zShortLeftArrow;z	shortmid;zshortparallel;zShortRightArrow;zShortUpArrow;Zshyzshy;zSigma;zsigma;zsigmaf;zsigmav;zsim;zsimdot;zsime;zsimeq;zsimg;zsimgE;zsiml;zsimlE;zsimne;zsimplus;zsimrarr;zslarr;zSmallCircle;zsmallsetminus;zsmashp;z	smeparsl;zsmid;zsmile;zsmt;zsmte;zsmtes;zSOFTcy;zsoftcy;zsol;zsolb;zsolbar;zSopf;zsopf;zspades;z
spadesuit;zspar;zsqcap;zsqcaps;zsqcup;zsqcups;zSqrt;zsqsub;zsqsube;z	sqsubset;zsqsubseteq;zsqsup;zsqsupe;z	sqsupset;zsqsupseteq;zsqu;zSquare;zsquare;zSquareIntersection;zSquareSubset;zSquareSubsetEqual;zSquareSuperset;zSquareSupersetEqual;zSquareUnion;zsquarf;zsquf;zsrarr;zSscr;zsscr;zssetmn;zssmile;zsstarf;zStar;zstar;zstarf;zstraightepsilon;zstraightphi;zstrns;zSub;zsub;zsubdot;zsubE;zsube;zsubedot;zsubmult;zsubnE;zsubne;zsubplus;zsubrarr;zSubset;zsubset;z	subseteq;z
subseteqq;zSubsetEqual;z
subsetneq;zsubsetneqq;zsubsim;zsubsub;zsubsup;zsucc;zsuccapprox;zsucccurlyeq;z	Succeeds;zSucceedsEqual;zSucceedsSlantEqual;zSucceedsTilde;zsucceq;zsuccnapprox;z	succneqq;z	succnsim;zsuccsim;z	SuchThat;zSum;zsum;zsung;Zsup1zsup1;Zsup2zsup2;Zsup3zsup3;zSup;zsup;zsupdot;zsupdsub;zsupE;zsupe;zsupedot;z	Superset;zSupersetEqual;zsuphsol;zsuphsub;zsuplarr;zsupmult;zsupnE;zsupne;zsupplus;zSupset;zsupset;z	supseteq;z
supseteqq;z
supsetneq;zsupsetneqq;zsupsim;zsupsub;zsupsup;zswarhk;zswArr;zswarr;zswarrow;zswnwar;Zszligzszlig;zTab;ztarget;zTau;ztau;ztbrk;zTcaron;ztcaron;zTcedil;ztcedil;zTcy;ztcy;ztdot;ztelrec;zTfr;ztfr;zthere4;z
Therefore;z
therefore;zTheta;ztheta;z	thetasym;zthetav;zthickapprox;z	thicksim;zThickSpace;zthinsp;z
ThinSpace;zthkap;zthksim;ZTHORNZthornzTHORN;zthorn;zTilde;ztilde;zTildeEqual;zTildeFullEqual;zTildeTilde;timesztimes;ztimesb;z	timesbar;ztimesd;ztint;ztoea;ztop;ztopbot;ztopcir;zTopf;ztopf;ztopfork;ztosa;ztprime;zTRADE;ztrade;z	triangle;ztriangledown;ztriangleleft;ztrianglelefteq;z
triangleq;ztriangleright;ztrianglerighteq;ztridot;ztrie;z	triminus;z
TripleDot;ztriplus;ztrisb;ztritime;z	trpezium;zTscr;ztscr;zTScy;ztscy;zTSHcy;ztshcy;zTstrok;ztstrok;ztwixt;ztwoheadleftarrow;ztwoheadrightarrow;ZUacuteZuacutezUacute;zuacute;zUarr;zuArr;zuarr;z	Uarrocir;zUbrcy;zubrcy;zUbreve;zubreve;ZUcircZucirczUcirc;zucirc;zUcy;zucy;zudarr;zUdblac;zudblac;zudhar;zufisht;zUfr;zufr;ZUgraveZugravezUgrave;zugrave;zuHar;zuharl;zuharr;zuhblk;zulcorn;z	ulcorner;zulcrop;zultri;zUmacr;zumacr;Zumlzuml;z	UnderBar;zUnderBrace;zUnderBracket;zUnderParenthesis;zUnion;z
UnionPlus;zUogon;zuogon;zUopf;zuopf;zUpArrow;zUparrow;zuparrow;zUpArrowBar;zUpArrowDownArrow;zUpDownArrow;zUpdownarrow;zupdownarrow;zUpEquilibrium;zupharpoonleft;zupharpoonright;zuplus;zUpperLeftArrow;zUpperRightArrow;zUpsi;zupsi;zupsih;zUpsilon;zupsilon;zUpTee;zUpTeeArrow;zupuparrows;zurcorn;z	urcorner;zurcrop;zUring;zuring;zurtri;zUscr;zuscr;zutdot;zUtilde;zutilde;zutri;zutrif;zuuarr;ZUumlZuumlzUuml;zuuml;zuwangle;zvangrt;zvarepsilon;z	varkappa;zvarnothing;zvarphi;zvarpi;z
varpropto;zvArr;zvarr;zvarrho;z	varsigma;zvarsubsetneq;zvarsubsetneqq;zvarsupsetneq;zvarsupsetneqq;z	vartheta;zvartriangleleft;zvartriangleright;zVbar;zvBar;zvBarv;zVcy;zvcy;zVDash;zVdash;zvDash;zvdash;zVdashl;zVee;zvee;zveebar;zveeeq;zvellip;zVerbar;zverbar;zVert;zvert;zVerticalBar;zVerticalLine;zVerticalSeparator;zVerticalTilde;zVeryThinSpace;zVfr;zvfr;zvltri;zvnsub;zvnsup;zVopf;zvopf;zvprop;zvrtri;zVscr;zvscr;zvsubnE;zvsubne;zvsupnE;zvsupne;zVvdash;zvzigzag;zWcirc;zwcirc;zwedbar;zWedge;zwedge;zwedgeq;zweierp;zWfr;zwfr;zWopf;zwopf;zwp;zwr;zwreath;zWscr;zwscr;zxcap;zxcirc;zxcup;zxdtri;zXfr;zxfr;zxhArr;zxharr;zXi;zxi;zxlArr;zxlarr;zxmap;zxnis;zxodot;zXopf;zxopf;zxoplus;zxotime;zxrArr;zxrarr;zXscr;zxscr;zxsqcup;zxuplus;zxutri;zxvee;zxwedge;ZYacuteZyacutezYacute;zyacute;zYAcy;zyacy;zYcirc;zycirc;zYcy;zycy;Zyenzyen;zYfr;zyfr;zYIcy;zyicy;zYopf;zyopf;zYscr;zyscr;zYUcy;zyucy;ZyumlzYuml;zyuml;zZacute;zzacute;zZcaron;zzcaron;zZcy;zzcy;zZdot;zzdot;zzeetrf;zZeroWidthSpace;zZeta;zzeta;zZfr;zzfr;zZHcy;zzhcy;zzigrarr;zZopf;zzopf;zZscr;zzscr;zzwj;zzwnj;)	HTTPError)urlretrieve)
HTMLParser)HTMLParseErrorc               @   s   e Zd ZdS )compat_HTMLParseErrorN)__name__
__module____qualname__ r   r   BC:\Users\Broad\Desktop\BeinConnetFix\binaries\youtube_dl\compat.pyr   "	  s   r   )DEVNULLc               C   s   t S )N)r   r   r   r   r   <lambda>'	  s    r   c               C   s   t tjjdS )Nw)openospathdevnullr   r   r   r   r   )	  s    )unquote_to_bytes)unquote)unquote_plus_asciirez([\x00-\x7f]+)c             C   s   | s| j  dS t| tr"| jd} | j d}t|dkr<| S |d g}|j}xd|dd D ]T}y*|tj|dd   ||dd  W qZ tk
r   |d || Y qZX qZW dj	|S )z,unquote_to_bytes('abc%20def') -> b'abc def'.    zutf-8   %   r   N   )
split
isinstance
compat_strencodelenappendcompat_urllib_parseZ	_hextochrKeyErrorjoin)stringbitsresr   itemr   r   r   $compat_urllib_parse_unquote_to_bytesA	  s$    



r   utf-8replacec             C   s   d| kr| j  | S |dkrd}|dkr*d}tj | }|d g}|j}x@tdt|dD ],}|t|| j|| |||d   qVW dj|S )	a  Replace %xx escapes by their single-character equivalent. The optional
        encoding and errors parameters specify how to decode percent-encoded
        sequences into Unicode characters, as accepted by the bytes.decode()
        method.
        By default, percent-encoded sequences are decoded with UTF-8, and invalid
        sequences are replaced by a placeholder character.

        unquote('abc%20def') -> 'abc def'.
        r`   Nzutf-8r   r   r   r    )r   r   r   ranger   r   decoder   )r   encodingerrorsr   r   r   ir   r   r   compat_urllib_parse_unquoteY	  s    


r   c             C   s   | j dd} t| ||S )zLike unquote(), but also replace plus signs by spaces, as required for
        unquoting HTML form values.

        unquote_plus('%7e/abc+def') -> '~/abc def'
        rb    )r   r   )r   r   r   r   r   r    compat_urllib_parse_unquote_plusr	  s    r   )	urlencodec                s:    fddfdd fddt j| |dS )Nc                sZ   t | tr | } nBt | ttfrB| }t | tr<t|n|} nt | trV| j} | S )N)r   dictlisttupler   r   )eZlist_e)encode_dictencode_listr   r   r   encode_elem	  s    



z2compat_urllib_parse_urlencode.<locals>.encode_elemc                s   t  fdd| j D S )Nc             3   s"   | ]\}} | |fV  qd S )Nr   ).0kv)r   r   r   	<genexpr>	  s    zEcompat_urllib_parse_urlencode.<locals>.encode_dict.<locals>.<genexpr>)r   items)d)r   r   r   r   	  s    z2compat_urllib_parse_urlencode.<locals>.encode_dictc                s    fdd| D S )Nc                s   g | ]} |qS r   r   )r   r   )r   r   r   
<listcomp>	  s    zFcompat_urllib_parse_urlencode.<locals>.encode_list.<locals>.<listcomp>r   )l)r   r   r   r   	  s    z2compat_urllib_parse_urlencode.<locals>.encode_list)doseq)r   r   )Zqueryr   r   r   )r   r   r   r   r   compat_urllib_parse_urlencode	  s    
r   )DataHandlerc               @   s   e Zd Zdd ZdS )!compat_urllib_request_DataHandlerc             C   s   |j  }|jdd\}}|jdd\}}t|}|jdrPtj|}|d d }|sXd}tjd|t|f }t	j
tj|||S )	Nr   r   r   z;base64   ztext/plain;charset=US-ASCIIz$Content-type: %s
Content-length: %d
i)Zget_full_urlr   r   endswithbinasciiZ
a2b_base64emailZmessage_from_stringr   compat_urllib_responseZ
addinfourlioBytesIO)selfZrequrlschemedataZ	mediatypeheadersr   r   r   	data_open	  s    


z+compat_urllib_request_DataHandler.data_openN)r   r   r   r   r   r   r   r   r   	  s   r   )
ParseError)
ExpatErrorc               @   s   e Zd Zdd ZdS )_TreeBuilderc             C   s   d S )Nr   )r   nameZpubidsystemr   r   r   doctype	  s    z_TreeBuilder.doctypeN)r   r   r   r   r   r   r   r   r   	  s   r   )Element)_ElementInterface   c             C   s   t j| t jt ddS )N)target)parser)etreeZXML	XMLParserr   )textr   r   r   compat_etree_fromstring	  s    r   c             c   s6   x0| j dD ]"}|V  xt|D ]
}|V  q W qW d S )Nr   )findall_etree_iter)rootelsubr   r   r   r   	  s    r   c             C   s$   |st jt d}|j|  |j S )N)r   )r   r   r   Zfeedclose)r   r   r   r   r   _XML	  s    
r   c              O   sB   t j| |}x0|j D ]$\}}t|tr|j||jd qW |S )Nzutf-8)r   r   r   r   bytessetr   )argskwargsr   r   r   r   r   r   _element_factory	  s
    
r   c             C   sT   t | tjttddd}x4t|D ](}|jd k	r$t|jtr$|jj	d|_q$W |S )N)Zelement_factory)r   )r   zutf-8)
r   r   r   r   r   r   r   r   r   r   )r   docr   r   r   r   r   	  s
    register_namespacec             C   sV   t jd| rtdx2ttjj D ] \}}||ks<|| kr$tj|= q$W | tj|< dS )a  Register a namespace prefix.
        The registry is global, and any existing mapping for either the
        given prefix or the namespace URI will be removed.
        *prefix* is the namespace prefix, *uri* is a namespace uri. Tags and
        attributes in this namespace will be serialized with prefix if possible.
        ValueError is raised if prefix is reserved or is invalid.
        zns\d+$z'Prefix format reserved for internal useN)rematch
ValueErrorr   r   Z_namespace_mapr   )prefixZurir   r   r   r   r   compat_etree_register_namespace 
  s    r   r   r   c             C   s   t | tr| jd} | S )Nascii)r   r   r   )xpathr   r   r   compat_xpath
  s    

r  c             C   s   | S )Nr   )r   r   r   r   r   
  s    )parse_qsFc             C   s   | t  } }dd | jdD }g }x|D ]}| r:| r:q(|jdd}	t|	dkrv|rdtd|f |r(|	jd nq(t|	d s|r(|	d	 jd
d}
t|
||d}
||
}
|	d jd
d}t|||d}||}|j|
|f q(W |S )Nc             S   s    g | ]}|j d D ]}|qqS )rl   )r   )r   s1s2r   r   r   r   "
  s    z_parse_qsl.<locals>.<listcomp>r   r.   r   r   zbad query field: %rr   r   rb   r   )r   r   )r   r   r   r   r   r   r   )qskeep_blank_valuesstrict_parsingr   r   Z_coerce_resultpairsrZ
name_valueZnvr   valuer   r   r   
_parse_qsl
  s0    

r  c       	      C   sN   i }t | ||||d}x2|D ]*\}}||kr<|| j| q|g||< qW |S )N)r   r   )r  r   )	r  r  r  r   r   Zparsed_resultr  r   r
  r   r   r   compat_parse_qs<
  s    
r  javantc             C   s    t jd| r| S d| jdd S )Nz^[-_\w./]+$z"%s"rf   z\")r   r   r   )sr   r   r   compat_shlex_quoteM
  s    r  )quotec             C   s(   t jd| r| S d| jdd d S d S )Nz^[-_\w./]+$r   z'"'"')r   r   r   )r  r   r   r   r  S
  s    u   中文Tc             C   s0   t | tr| jd} ttdd tj| ||S )Nzutf-8c             S   s
   | j dS )Nzutf-8)r   )r  r   r   r   r   f
  s    z$compat_shlex_split.<locals>.<lambda>)r   r   r   r   mapshlexr   )r  commentsposixr   r   r   compat_shlex_splitc
  s    

r  c             C   s   t | tkr| S t| S d S )N)typeintord)cr   r   r   
compat_ordi
  s    r  c             C   s   ||| < d S )Nr   )keyr
  envr   r   r   compat_setenvt
  s    r  c             C   s,   ddl m} tj| |}|r(|j| }|S )Nr   )get_filesystem_encoding)utilsr  r   getenvr   )r  defaultr  r  r   r   r   compat_getenvz
  s
    r#  c             C   s   dd }||||| < d S )Nc             S   s&   ddl m} t| tr"| j| S | S )Nr   )r  )r   r  r   r   r   )r   r  r   r   r   r   
  s    zcompat_setenv.<locals>.encoder   )r  r
  r  r   r   r   r   r  
  s    r  c             C   s   | j ds| S | jdd}|dk r*t| }|dkr`dtjkrVddl}|jtj j}qt	d}n:ddl}y|j
| d| }W n tk
r   | S X |j}|jd}|| |d  pdS )zWExpand ~ and ~user constructions.  If user or $HOME is unknown,
            do nothing.~rn   r   r   HOMEN)
startswithfindr   r   environpwdZgetpwuidgetuidZpw_dirr#  Zgetpwnamr   rstrip)r   r   r)  userhomeZpwentr   r   r   compat_expanduser
  s$    



r-  cec             C   s   | dd dkr| S dt |  }}x ||k rB| | dkrB|d }q$W dtjkrXtd}nZdtjkrltd}nFdtjkrz| S ytd}W n tk
r   d	}Y nX tjj|td}|dkrtjjtjj|| d| }|| |d  S )
zTExpand ~ and ~user constructs.

            If user or $HOME is unknown, do nothing.Nr   r$  z/\r%  USERPROFILEHOMEPATH	HOMEDRIVEr   )r   r   r(  r#  r   r   r   dirname)r   r   nr,  driver   r   r   r-  
  s&    





   c             C   s(   x"t jj| r"t jjt j| } qW | S )N)r   r   islinkabspathreadlink)r   r   r   r   compat_realpath
  s    r9  c             C   s"   ddl m} t| j| d d S )Nr   )preferredencodingxmlcharrefreplace)r   r:  printr   )r  r:  r   r   r   compat_print
  s    r=  c             C   s   t | tstt|  d S )N)r   r   AssertionErrorr<  )r  r   r   r   r=  
  s    win32c             O   s4   t | tr"ddlm} | j| } tj| f||S )Nr   )r:  )r   r   r   r:  r   getpass)promptr   r   r:  r   r   r   compat_getpass
  s    
rB  c             C   s   d S )Nr   )xr   r   r   	_testfunc
  s    rD  rC  c             C   s   t dd | j D S )Nc             s   s   | ]\}}t ||fV  qd S )N)r   )r   r   r   r   r   r   r   
  s    z compat_kwargs.<locals>.<genexpr>)r   r   )r   r   r   r   compat_kwargs
  s    rE  c             C   s   | S )Nr   )r   r   r   r   r   
  s    c             C   s   | \}}d }xt j||dt jD ]}|\}}}	}
}d }y4t j |||	}|j| |r^|j| |j| |S  t jk
r } z|}|d k	r|j  W Y d d }~X q X q W |d k	r|n
t jdd S )Nr   z!getaddrinfo returns an empty list)socketZgetaddrinfoZSOCK_STREAMZ
settimeoutZbindZconnecterrorr   )ZaddressZtimeoutsource_addresshostZporterrr   afZsocktypeprotoZ	canonnameZsaZsockrF   r   r   r   compat_socket_create_connection  s&    


rM  c                 sX   t j } t j| d}y|jd W n0 tk
rR   t jj  fdd}|t j_Y nX d S )NZfooz-tc                sD   dd   fdd|D }t  fdd|j D }| f||S )Nc             S   s   t | tr| jddS | S )Nr   r   )r   r   r   )r   r   r   r   r   %  s    zIworkaround_optparse_bug9161.<locals>._compat_add_option.<locals>.<lambda>c                s   g | ]} |qS r   r   )r   a)encr   r   r   (  s    zKworkaround_optparse_bug9161.<locals>._compat_add_option.<locals>.<listcomp>c             3   s   | ]\}}| |fV  qd S )Nr   )r   r   r   )rO  r   r   r   *  s    zJworkaround_optparse_bug9161.<locals>._compat_add_option.<locals>.<genexpr>)r   r   )r   r   r   ZbargsZbkwargs)real_add_option)rO  r   _compat_add_option$  s
    z7workaround_optparse_bug9161.<locals>._compat_add_option)optparseOptionParserOptionGroup
add_option	TypeError)opZogrQ  r   )rP  r   workaround_optparse_bug9161  s    rX  get_terminal_sizeterminal_sizecolumnslinesP      c             C   s   t d}|rt|}nd }t d}|r0t|}nd }|d ksT|d ksT|dksT|dkry:tjddgtjtjd}|j \}}tt|j \}}W n  tk
r   t	|  \}}Y nX |d ks|dkr|}|d ks|dkr|}t	||S )NCOLUMNSZLINESr   Zsttysize)stdoutstderr)
r#  r  
subprocessPopenPIPEZcommunicater  r   	Exception_terminal_size)fallbackr[  r\  spoutrJ  Z_linesZ_columnsr   r   r   compat_get_terminal_size4  s,    

 rk  r   )startstepc             c   s   | }x|V  ||7 }qW d S )Nr   )rl  rm  r3  r   r   r   compat_itertools_countT  s    rn  )tokenize)generate_tokensz!Ic             G   s$   t | tr| jd} tj| f| S )Nr   )r   r   r   structpack)specr   r   r   r   compat_struct_packe  s    

rt  c             G   s$   t | tr| jd} tj| f| S )Nr   )r   r   r   rq  unpack)rs  r   r   r   r   compat_struct_unpackj  s    

rv  c                   s   e Zd Z fddZ  ZS )compat_Structc                s(   t |tr|jd}tt| j| d S )Nr   )r   r   r   superrw  __init__)r   fmt)	__class__r   r   ry  p  s    

zcompat_Struct.__init__)r   r   r   ry  __classcell__r   r   )r{  r   rw  o  s   rw  Z
IronPythonc                   s   e Zd Z fddZ  ZS )rw  c                s"   t |tst|}tt| j|S )N)r   bufferrx  rw  ru  )r   r   )r{  r   r   ru  y  s    
zcompat_Struct.unpack)r   r   r   ru  r|  r   r   )r{  r   rw  x  s   )zip)izipc             O   s&   t | tr| jd} tj| f||S )Nr   )r   r   r   base64	b64decode)r  r   r   r   r   r   compat_b64decode  s    

r  ZPyPy      c                 s   t j| |  fdd}|S )Nc                s    | \}} t ||ff||S )N)str)Ztplr   r   funcnameZdll)realr   r   resf  s    z'compat_ctypes_WINFUNCTYPE.<locals>.resf)ctypesWINFUNCTYPE)r   r   r  r   )r  r   compat_ctypes_WINFUNCTYPE  s    r  c              O   s   t j| |S )N)r  r  )r   r   r   r   r   r    s    compat_HTMLParsercompat_HTTPErrorcompat_basestring
compat_chrcompat_cookiejarcompat_cookiescompat_etree_Elementcompat_html_entitiescompat_html_entities_html5compat_http_clientcompat_http_servercompat_inputcompat_integer_typescompat_numeric_typescompat_os_namer   compat_subprocess_get_DEVNULLcompat_tokenize_tokenizecompat_urllib_errorr   compat_urllib_parse_urlparsecompat_urllib_requestr   compat_urlparsecompat_urlretrievecompat_xml_parse_error
compat_zip)r   r   )r   r   )r   r   )N)r   r   )FFr   r   )FFr   r   )FT)r   r   )N)r  r.  )r   r5  )r   r   )r   r   )r   r   )Nr]  r^  )r  )r   r   )r   r   )r   r   r5  )r   r   )r  r  r   )
__future__r   r  r   collectionsr  r   r@  r   	itertoolsrR  r   platformr   r  ZshutilrF  rq  rc  sysZxml.etree.ElementTreeZxmlZurllib.requestZrequestr  ImportErrorZurllib2Zurllib.errorrG  r  Zurllib.parseparser   Zurllibr   r  r  Zurllib.responseZresponser   Zhttp.cookiejarZ	cookiejarr  Z	cookielibZhttp.cookiesZcookiesr  ZCookieZhtml.entitiesZentitiesr  ZhtmlentitydefsZhtml5r  AttributeErrorZhttp.clientZclientr  Zhttplibr   r  r   r  Zhtml.parserr   r  r   r   rf  r   r  Zhttp.serverZserverr  ZBaseHTTPServerZunicoder   	NameErrorr  r   r   r   r   r   r   hasattrr   compiler   r   r   r   ZBaseHandlerZ
basestringr  Zunichrr  chrr   r  Zxml.parsers.expatr   r   ZElementTreeZTreeBuilderr   r   r   r  rV  r   version_infor   iterr   r   r   r   r   r  r  r  r  r   _namer  r  r  r   r   r   r>  r  UnicodeEncodeErrorr  r!  r#  r   
expanduserr-  r(  r  r9  realpathr=  rB  Z	raw_inputr  inputrD  rE  r  floatlongcomplexr  r  rM  Zcreate_connectionrX  rY  rk  
namedtuplerg  countrn  ro  r  rp  rr  rt  rv  Structrw  ru  Zpython_implementationZfuture_builtinsr~  r  r  r  r  Zpypy_version_infor  __all__r   r   r   r   <module>   s  "
	

  


	