          T      wKBf,zl<#Hh            xo۶WNb'чmuɊ&Nk 8PtƖ$9K6w$%S2%nu.ɼxw$eI,Cy|GsY=zG	ϤRލǝ庎c;ǆzѲچV?}r\iLg{<6,d[d
bu4[!yGr:;_b!)C%vK?.)H!B7ӱ9FSű;s^wtDNC#qsR$F,$c![ƔR̃1<#h[cxJILyD	=yM}3ny7cd#J\[);N{\ C?!<$4;11$	B$Rwc<$dƫ⯤s`M$%ˈN d{^} wW7N <

Rl1r?Hmt_o>stɻMe{n02E%*p+4v,J ٘LG
({\v;{.& yB؄A %͊Wm>er~>и`1 (F]BM0[dMw}ݻ4ȋjBp!ء`MdӁt,`Hk~jl9ybWt8AidwG7LDcq9,x,L9|bê8}YLG!R6\8SҿnzWѻ1lrtttJ;@cq{3:\c8U2K#-\|G9^$,..nSR_cI=Av0D-'`kuE]>hQgbf	g:	E@(AD1L8j 
\2aGIs-\j@yρ̴	HT=lL{g 7::L0&| 	-0(
9^jx$mhs\'5R!Sb`i}UGݲ8pec$8$sT5,Dؘ @=[XevN ur9H_E{Ki1MX775Y(])kƷ/7ͭ\q7!JBNf^z̃	;q9)S<X `6Ho=h6M7ObvBș;'= }ʻ?݁K7?(ovYAG\0'땲g'	zk ْ|eC[x!x"hC\DWW"#ު^hC+0 K;-K!!mˆ!!t! aE |u5mB"7EzHq0%yRM׃`%;[eȉlVX$"D-:9-5Es;͝TP9PT0hZj2V.3<%͜\6e6e$}<WGn,b[C!mH<kncfmSp[\ANKثRqdm%iJURNrljZV)dsJkhm1Nq `E *g Z]8iW'u`[8el얠am  ٲA	`-z[Iﭓ{ǺDH"Hf)nv;ޒ]kюlXz\@ZWk#EFy\-erH눾N"0cMcj8rԬW!uk}ՐBRF:n:ѩ2qUϕLeͫĤ"E%߆ES]n{i"l)2P<0RdP
I&R(Q/Y;R>Cނ|2޹5uY7gRʹmɷ7/mh;o]u-V%
iiiXZFꌴJiiiiiiiUgSHGHGHGH|vv}qNdըmM؟̿'|NRFɹ}bΙO~0N.f縑ReʷәY Y
('
#K(ce9V=VJ#bdDUgᑧx3R w17%SFC7dX3nϝyK<䖘0<.:!sDkF#b	_VfjxO'5+Q*J,T̗mX-}خ(*>hCO~k RpkQ=59)QRp[[HzSDLV Z*F&ޭ*.Lj2'yhB)`;}grv .ESJp
4-F!PV]j⡳U< _}A~ _($@E`ॱ`YI_(/4Ya,:iU·ܖiTZ o+ccbhb2H9ܱz`LQfȦ 8:BjvS(cĚcM rs)sfza~3=K;W|Nr)#>Vd^f*1Qd$_?q:gg8;_8*fNe)}lϪCP?UUUoV4"i1*bj	W*T7t*禎sSܴ*e:*禎sSqn[٦IK!h21eH`mߦʸR9'grJV5V8VYSfSU2^S:4V~LS)#il r/!geOyTGK7%ǢVE6z`:)#c8uP	V_ Z:T%g[j<w3Qo}q<4.<QdΗTxs.'#I3_7Sc1J=_*}) +KܬN|u.Wp֞{sM'vۧ%8ۑ8g!xګ9M`oQk_C+E2WXr$Q.(Y; ^n8& +y\tڽ|=߼y??T9ed}$){LT0GO?cӹxeϹ) U¸JU/H*UYE[(Sk=	J9`>By|UO/|آPc_8
M~s
s,FfŦv
l
`V8YQMo?+pl)Vn޷n9uvPktz(h'FI(7I+Ӹ..7t*3hv0Ue~'N̍Rr{AGҎ9{Ov,.P)t~s|Rc}"D4w6F<~⛠w4wtI6f*BP_K?bx=Y2|M8vE;C MBv#`zM+PrY_>XdsuBBZ3R%D]`|С;N~Ue7G~8p,ǸO27c=EƬku[Si\K)E[,t_@h@Ef|W.)UYW݀NwT)(g5]a%lV:UЭ'9l;g*$EK	۠O7ը2SkeM!ogF͏ɿ`;eaV/DP\02{//3fM<w=GܴϿiHbt6]z1W-?Ei%)e0J_	vMHlB_MKy_Gթҳ[z:
ɪxBZV%6L+mHUoUHi*fŷc#ɽ<yreYn_fg*|z_%~:M]k($tۏE\?NST           U      	
     AFUFzuç            xuPM0'BmR*2<MD*t]EՏBH{Kbe0Y4 B*8>7bn"&,Q@aFo(<+J4A-C	v@ٱ?zt̟CXK-jz[08!LrJXcD߱4OQq
//ŝsY}Ў#\5TB߷HZ3           V      	,   S Ղ2LXK            xc`pg cFgWg
cxgdǥDG!3(DKK@@ei%@5VI!D/>1(H#dBInAQ5X]AbQIfbSiIIjQZN%P5a@:kuz4q xZ..;̠6@/%$@U t5,l DZ        Y  X      	.   ؔ^w̡/
P4            x}QJ0͞~'i2܌ tVe0}e)IINeOIS7bܜ{ES&)]׌CTPÒѧqRI_2NzDB(kE%2ȗRsVnR\	@A<)WP,W^hW#qrȭ*$D R2U%YF=1kePGg<d6I&6*+c^x;VC6yVpp`q+*kg6oVIKRGƦ9[{5e23kNEnR6L:4U/#j5^hل[N         2  V      	3   58zcS?X            xc`c`ob``R ļ[
Ӛ!b      &    I  \      	>   BJP~|c            xՖj0@'}P$F#+#s(yXF_J0!Bc[m]N.r@<lk{sF.~q>|gfwI*pg5I=c9fBMW"'"AhcęP`v#Ĥ] Y8}7Ocm
RtjȖRX܇_^1K۵Rp9_=*w贇e0/'oa4mfJү4E*޶2`,m[!s?!cZJJBB	-sPBb
/wTyCBxl@!GXRgjaZ~G4a'ާɛ3ѓk);	xj<a'ݢd8L!, n,NX!1F8SDhQUkAqiCjCqlp:!@N>FHLchSDhQUmAAh"Aj\Dh߼'L~׿\܎ק9{[𪀧X6 X#e;{H__L2    o      _!      	D   AT3sRU            xՓN@lބM5H!1AiM1 -qi3w\+B7>N/BJ{!Ere8/D+'`c&pp$dwuMHK& % Z̋4uK$ꨩ'L=a}~⧶z@zw_UЯ!w=t04cD"Ō[1iF`63 a>̖+bsGSouN0v?X.w	`SP	f%-n0timirnnOL@ȵ7_rDOByee`Ԝ!OMA8buU7YŒ>R[ĤXъ%Ic:::g^8Ui          ^      
,   #cʐJ忼Mc<l            xAkAIG@m=FjKlnw֙٢ośMx?GEP+l9%f] Naϥ+j$fUXQc1x\E0J?L3Nd:ͺKM=̴r?[[l`	]b\Ƙ
? N7u[pށ3/y?\8Cޝ=ަ-{3sG֧~rX1RҴ,{סӲnmti3W6rW$CCxMR"\kH3G8O[pں(FҸݥ]/::~,(>jJ~ܭ	ז~K6O8vD;FI騅q%@!}1z6DS=H阨OL1,㲨v^Yx070?V(uDT |-1,2          _      
[   C7#8            x;hSQƏK()@1yyK	5bM4<HcIDD]EKAMT{xG_/7e1ƘqĔdϔvS\ݵnUt9g3vlLb:+67U]^^~Ѓ#܉Ŭ̆U/[MFlj+VŮVnle⮑gN=STnVL5__OΘfk4_ ?tE$j5?M-*!na9[/m` UVp
zlۄDM@7vp:
fZVx=@S>rJ'PJ÷4@3*ER#g5ҊEK+bZũ*apJΫ7 U רzuرN^w=V,}{n;nyK^c~n^r0.80Z^Y"1B,LAO\똸
wL<oGL7\˄X%e똲|T,1uQӈ֍AI$L4:f|}jw=:+s\
x/_2(%BD?+/)0V          f      
_   3}O8´CV0^]T/            xUKn0eՅO1K;**AR9BUF!*O7Q/KZl#	޼a~a~q*d]BVѸ,2 ?	vC@cgD%}hx4< {»tj/#T%ucp]<X0&NAqm5cKgA%9&J4)~ͯA$"_A?6$L[8g$0'(ZlhܧJ BKWbBFs'\NӦt2:U;Rr%e`q2S/
)̇2-geǲXسW{ݯzje-ܶ}7LƄ}}rM0PC
?[    Z       fi      
   	/]l#]u}            xc`d(䤖(*$&kٚ
Z
y%iiI9ű\0E9 IP0mĔdM;;B̒bgM^u$FW`N!@Sk)4            fm      
   
@|U(觓]ĺ'            xuJ@%O1ԅb"mV.5UV/gC9Tfg >VX®@]sjMV9Y$ȑ\_MCv'Oq@Rb:K7Sd6VXŝ ^*&5ŭwipH=Xp41saQ@G? j'_+#qyGw8c|9.A\~j          fq      
   wscx            xuJ17`Ne.5==ҋn4,Iw͋/8,T&' ;@ ^nqطHQ	|8sgID wH\2xBR,,QtLttT$vǽ U^bBKF-Ū7˰H_ 	EkƩu5}vNڳcCV[.Gv"8-K;?EW86a4~0oj           fu      
   t-EU1ƕ[            xc`p>,?3E9"Y8#DA(YG!3J).
JKK2SR5\́	h8xŇ9iQHOMPRմ¥*)'?9hJ ~4U
rSs*5 J3JuԀs
L)άJOxDbWY@S@$d&8TZh8WG8#3$k1u@BAt@t ρ+ `@]맠`DȚ <qU    !      fy      
   .%bf1fa?-            xuJ0(%洴kABke E)vےDq=:>ip:0  g _;UEvǸbSw"Eҩ4֝zvi*e7H5~v+&rXtz`*Fx ?!x6rSxkSQRwh@Fˮ$gԟ\Vk-#)ZUVayC?<^3iܧ>7qK]
Ow'?F?Op|    "      f}      
   rb$kupoY            xuJ1O1[B"x)uY6,I;u<u6	C;0 dK ߔ,jrY>MšESi;uVۅղID_7<ŋbD*EtO*^Ψ>P)m<b)(d4r #?:GPqZ[n._jƑ}M-+sxqpzk~7OqK]9
/'?E;.q    $    /  f      
   +[a,Kͨr            xQJ@71_1(1R|ԤB[4͆m|ỿ N.yqa؝a9go / 8\	?ƮNHzJHBXҒ2 w)rI|Mǜ6&e.vэWi#`u6NmѬ6hVDv(>	὜IHYԔ>x_i|)xrCn/]LYhHX6;XjJ_(Qk
'OEQ~(m~,")^qV돉llr)-U<m    %3    A  f      
   2vݡH~Ev            xQJ@sAaN%b^5дAlp͆ͦZ/~"z'IksRfޛ^ x%xnAWf&C[!eDʦJ
3%y? F{!gF3	,}Zt
_D{fߪ]>}#Sn4l-_"_	LR+dXɊɌz	YP
VB>eK;:xg7ޓ1i"Whrn4o9$/gIS$ ulɖaҟju3;/m
3D1v윹    &t      f      
   =[1)Ђ
            x}PMK@s9M݋CmAZk/lpMXZgԁ7\3 T6m2(=$xIwI"OkrГzLc'w3:^X<Ĭ2ś4NoZe#af\`KGv$2Xrc7J4/BXչ=IqD|ŽӽYgN!o8_*h_u    'y      f      
   px֚gGч?            x}AN0EgS̪rJ67Ei
BH+6($&\`AI*o yH @45V\ӥÉ5Y2tϭ3ҡuF*`yK	Hgz,4[zgYG.p\.
)tBM&Kd-e@~z;qzzqNbF`mfGօOEO|QV;=J[nih>7Ux Awz    (    	  f      
   f5Ҽ~%sAW            x}J@ܳ0 .xjCD
jlpMO>MR̩}XES?R
5LI8q6нU﹣[Uu8bw	g-j3¬Z
Ix9:C!tBú{SZʐ6AspBujɤ"m..mf6c#ԹX?XEV	n[]0敶2|5_*9q(Ax    )    h  f[      
   |-},TF39q            xT=@]+		ŉ#%']
Q!AґRuRp%?*%ٵ/ɉ"4j=͛qD?BOPy+{qTбJrlAG8;z<NL,=^l"ybqid<Wb24NSiW=tB?Drk!kzG,oj[Lp Vd&c>BkllU	5O9 h>O2A\q6^ƫ@Δ3äqtO!738/AI ,רx=l2Lr?tBpA3U8ݳꮻƶoP}A|ۍ3$,4mp 'W7=+< Er2oZHt p~ڑ|
{!; xKi r\-̴|m#
Ңv{K)[f4i\4MzsqM(&
U\VUi,]G/||Y|su&og8|EsbwyF/g4YAln7rt    +       fE      
   Q/o5            xc`` y%
y%Z
i

E\ 9h2D0Ě!5(@PVJjaib^	 $Qf:H_!;s2lc]c#s3eqVt^&Q(z2i@cSVHLITS(L+QU(H-aP.@':!K4N$QQ 0HA	]?X,P?0.aBN Vb    ,       fA      
   RKVur	{O/E            xc`wc`f``0.LQH).1O(/*Q*.JQ`VAIQ|BqIQfJ&(@AnjnrAZRN~rvtI(0(bdVAlԴ!Uh,Ȭhx
X[ [2    -       f=      
   6|ǅB(9c&I            xc`pa`p`\\bQ_TU\dY%E%
%E)\NI@E
rSs*5Ԓr򓳣3LbuԀF9@'*5?b5мT 6'2@hx
X[ b2    ."       f9      
   =ccSQJDT            xc`p,?3E!%">Y8#DA(YG!3J).
JKK2SR5\v(MM.PKOΎTRQP@E,@̪4m@Rh,Ȭ={]C-*,blγ Y3    .       f5      
   Ay6h8.ɶ5wK            x5A
0EgS̪4AͦRpW$`1hMHg::0on J\HUœ	TJJǔOA&)XmXAfJ3AGU.N{5ro$Vvc.\|}w1li-3ORZ$w߱->c4d    /X       f1      
   {-*gdsBmZ            xc`g`he``0)LQHI.16O(/*Q*.JQRK⒢̔TM.O nwSJL-cX5Y`D/PˬJOاi415ۀ&M+:)9$بh-̍\ 3    /    B  f/      
   m$e0#YraN            xQJ0ϹW_;v30<T6aM1ꖒdszE<&|/GU'_|'2x&dNk)26Xhj=Cna3<BNG4<?dz;yDFyM1MG; mao)k4G#	!<En؞6AZ-Ju238nk4MQe)	@?%w%TJٿ$kMG>fx^_FM#y˘?a *vEy}16;    16    V  f-      
   ]E5\i2.            xRJ@`nhSi LpɴZw~Lv%\s; @ ZEkŎXj*0I=LHcH[!@C=n]ëo'kȦn z&1n⚠k!Oб.=c2^ b6o*o嚫3RzK"ѡ&ؑnlغĎO_,g+]p\iT,JBLie$4;.yn'88Ujͧho&\<p.'7\ف$h#vLWhV z    2      f+      
   6Sl=.]Ƒ            x}]J1k<u"P-Ȃm_j6͒z	/OIv>90c!cY;].$r!#]#	'c]8LZB=b?ȿ 6B;O&X^r1!Kr$MӔ6#xP;6A᝱)XO6+zU] *[V*dҨϡK'~NmD.Z*T}Fmdi<T~	N)Sv=IMzA97X{_Cwqx`    3    )  f)      
   A;9kp1s>dW            x}QJ@|WJRP% }H/%,u4	k3xo#'&)ɁewH,@	 gM3ԙt}3":3 懔$".i"Nܓ>|^2#d<'q/BMu3<Ƨ/0hddUXHRh<Yӫ9eb2V1J~;$ю:t\f=J)Ze	m4d_~VQ}x;񟱌Wi~g{    4    #  f'      
   
Gos)~ּc\A5]            x}J0.|hgLq^/ds΋QLvmIpG1|06f1vtN:6tiiQRFښRcelQ_	k|Mx<xpdDE%1<G@C[Cw:ה.)C;
S
kGKczVUlr-M#kF$*(ZMsmNEyw(04۝\zwۆF	8w?eB*GةErs=C F_Ny    5       e      
    uoDHKKnnƔ            xc`c`,?3E!%41D#3D!)%$CG!9?D( vOMӁaLZ3#53=.H-0RsusJSs2}2J3RSrӍB3R!ڴN٩tcQ0V;J4YҮ`dkY((sb5vDq'ů+ 4ˆ2sRf9 z) %@  Z}    6       e      
   !jhk?ϗ3            x]A@EkDj\RAWQphLIAIG{xos8wԧC7 φ*:ۨ2]XY_!mʱ&qb(&c{cR,ZFa:q!X5ʗ|%]r;[5H%ĽN׮*	{~95݄h0GjD;?wOkoV    7     '  e      
   "-F3%
AS+_
              dL  dg       p.dequant = dequant_c;
    7      i$      -   #)rr'jV>            xJ0^]7vtcM)cH){]0=$P\F` RJÌrbD
Ia4&2.ɷ&WtMBHK$2t,x&"*\H.zPbfYh!qf@*-6[	oZifǡJcFb߀	X}p:Ս5 	89+
,ᶐӄ,YZ68FH%>t n9G[=)k~s)ϥ:*L]hHTG@ey(:0oܵinGan 䕹F׼Wu?A?ۃnTuiƌبW    9      g      6   $ǟͺA훺l            xXk%E.5cԘld"껈dY	&ل{?@<ɋ=^ xUztt샗몚xt
~֝Ow>پA<{xykJ{}yo>O>7 Ogo~;(y-٘;ظ}sd2ƌ3{{ɵktsg}!:)t9<8>*9wG X}LY<l7[DVZI|W8+}^$_soѪYjcژ{Ƣ6&23<TA_vVPxؗgaI
B<8Ĉ)!:P{*!)	7.<Go1L(ncVzǦEӒ2y2o7Vmڳf֚ۡXXk!KwOK ^:trp1I"_6Q5׉\#Kn\ǾVlctZ=ZїZi39a k?R/ͻdɒ5MJ5az tl[R+TF)tA5n.AKI ^*x9YZuYZeYXUv11T 'E	dL 	(B P
@M `1ש2ӺhnV~͏ڑ2Gv;90cxXQUI P@ 60_=tfܞ	rn̊C΂9? <Akt35H,34r+UrJhIzj9B^! #e򂑧c۱dLxCO 9Eωb9U̸> +Nj	h̛G<(k ʼ]"fޢ{gƍR`nPxbc.%W'"N	QBR֥E	 `LsZNvsԔ<Nގd'd;0JvJv㗓=9y,B<NCU!_t)Pk|U7|S3psKf`̀H_n+e(G6d8]M9tĥ `=_{RZp
xtvv^
,w"xw9n YcKq8\7^/*ĽkNA	 8 >\`GNtB|Sۻr`Xkn;iۇ6\x    >p     <  f         %?TdwKw#              u     $#include "Lib/TLibCommon/TComRom.h"
            >     ,  f         &T{:MVK
!              O      #include "TLibCommon/TComRom.h"
    >       c!         'bVzlIx~x5F*K              ^:  a      e_  ez        >      b         (Dφ+V~A            xUPAN09|b
 zB#ш6^B$6H#B,<Bz GrLpq54wm>Q%eE,~]x-iMs
NIV}RKe;'Bď)!n#Ν\4uT\l;<&X>
ovxma0H۽8WbCgs#!|aĖ̺ӱ{V*)?ouG8om    @	     a  cK      >   )wWh.A%DLvr            xc`` 
Z
pPX]XYX`S u-)L/J
f%%q!KLJ,QpINTɃpc`pʀ`F. )    @j       c         *ޱj3S8QXB;Y            xc`;oPVWbl_PXWk)$秦(`qg &S
uT(t,)0SR \d9%Ś\	` i
9e9\
H@IV!)'?9 ؚ b9    @     #  c         +Ҧ;))`LEq              )  )   using namespace x265;

    A    '  c         ,ȟzH_{Z]n#Dm            xc`c`[RPXTTZRZSiQ_TU\ e(x iPfNf^&-UyX+K-*N5!X҄%ٵL3؈Ts8g}G;  >~aA0($秦E(h)jZsRP\i`V7&[ uX6'@6I!'"hPaÑL ~Fw408Hh!y@Fv!\& oma    B8      c         -Dh54"Ul/ qy            xc`c`[RPXTTZRZSiQ_TU\ e(d iPfNf^&Ь%@h^dt`<hX $mtRĔ[CE

@;o10fϼԢTRi@cNGvĹP4!@\J  aj	TVm9)>؈p bbĽTH)     C<       c         .*Z<hcv@*                        CH    I  dg      L   /HyPǻ l            xX]U>b[kqԤ$nukvB:fIGAHQ|ARQ K H>{&36NwϽ3DǈV_"YQj|ԬmY	sJgB\O)}QzάYIEٱ˧-Y8m;r-њDk%ZYPv.Z2PW+΂2d2:]PpSkL\kh&ݻXnYBۺ`9Zg&qvF:TZ!ِ!;1BL LҪkZXSJГ,
ܛKgV"Z\WAwJ'| k(_0ĈFJar)%=ysO.EY0ÿ)d_h9YFbqzF~$/R2K{N[VY[8jC]
g_.K$nx޿0\ι`u~gG,
Z`211aӮwOR,XȰ { ӽP1!iUDB. XYw .iUG)@[y/JA6lf*5AУ5Unl}l``+ abwl	]4-bmF-U Q(H{DW!ֲUW7 75+z[ z$@_T)VCS2i/E'z"kG{BwyBkdX1t#vg+ےf<x"xqG/C*%$($(4N-$NM&qAEw!BFBFBFB&rrrr.~ ں>-mIEϷ'z]hHˏNG:{ݹuFI:#dOH`]8(L_i"LUzX{װG͉s)0Z{Q!^/$(`ƈLg&̌5~g/f;Z*(fZFͮ[Dsgfݓw0J!s?x\4+9tC0F7d$wuw	EmfxY3l5e5
Xrfc'Of~;?~|N<u߇
\峉mR/M)'i/V5&nqϟD;^|6x&;t;	) r3B؈anאkĻ	nx+aeؗBx!Ac,jnGUbؚ/x<p>B%la)|qVxX+ۑ}p#d鏯3샯CC`b?)Sm~lLZm4u0=@Z9.iiȫ"mH@2s4#iϳ4Hg/Cn#!f#Xy8*kG|:i<ޕ17/hc>4\wHwDpkA>YwO@>( Hcy     I    [  d      c   0?uE~yp            xJ1(}BdK/VѪ ")XlE]I*x'^|g7dx~|3 }{-atK(XR31vi_lbcL
@;A!t'itP9<]r6D)_@}1;)\f
]rA=-P))G9ŏj[\?l"fħI,rVHVnk~WרOɃ`vE&<vAur$}JH-%ʈHqI5q_<Sp$[kl{ȸe+k\224MA    J       d         1r%`R%!$vٹ!            xc` 􇁁W8_bhmSR432J4$BM@&(m)DE"h"hR\ڍ~)s nߏx!wH[g3j0\*j"j
5%!͠P4cB9_FbcX=p$auikkb%DE "
ZVj1T5I!4DM +{    K       ew         29Ͽ,ӽ(bQKxR4            xc`plc`p\ y%
y%
i%@Bik@5	 ~JN7Q 6¯N nįN@|N:}-8N?5Pj4a`"SsE ~OP #Ssj >If W    L      d         3<NǶ[L(=a            xTJ@]~Q]LZPɶ֐jR(JϾ
&M$ݙ3sac6lӏ~^Xq2$n;j3+$Jn"9jYL&aE{.?Q1MQQkjԨiԬT/p30VU+TCyGL),P6dhʈn"gOर)8P4[wyCT+ƾFӎ*q8qRE7*"UjeAYJbΒLS^#썱<_o]M攟)ޠ0ô73G)XE$MTlĪ8[$6ܲ$;cCRfW93M1IȖ k <We~{FӂiiQPO&GJpaw6 =w?g
\    N_       dD         4_,3UoӟSR~č              Z  [        Nk     l  d         4ad1§+/ì+yez            xc` 
@jX[PYan`djRX\ZTQ0627дF``k`*WV`c` xN#e    N        d         6   5Wf5B- T۞>8                N     %  d         71DH2T!QF>i              [X  [p       assert(shift <= 10);
    N     O  d         8V287Q$y'z?Uy;              Z  Z   #if !HIGH_BIT_DEPTH
  [<  [<   ##endif
    assert(num <= 32 * 32);
    OK       f%         9	}S)z5|O2K            x]PK
@s'BX?u1DJ-tLgX^U!Ǝwr0$ WT*y-J0W!j&6SEYN-ٞ]'D40Ͱ&7`HE~`9 =VQ|aҰQ9ДǘH8whD	zsꀡZ-==gv^~e/ONe    P     ,  f%      
   :{z?LtoYZ?=Q                   #include "common.h"
            PB      g7         ;Qb髈O+[5            xJ0sx!ZV6ݬl
^@25.]S"OxYH!1np<Zw鬻[egËqC'u~
ß&5{ӄ9h,QdZ8CZ3CB0j˓IIcX	V6vOx]rZ-?V̽v6[S-L䘴R"`tRT1Z;aM'G;e6r~>gQ4    QM     G  g+      )   <eK:ha,w#b	              /  v   ; * For more information, contact us at license @ x265.com.
    Q    8  iw      3   =k3 AH6q            xRKN0|b{˸IQHHtXrHæ
\Sñ8Ē{<oxb @rd1*X~Ȋ,]9Mz(9&pO8#I D;=o^[I{j)큉jU[&/jkJzNE4 I-=J߳Q'IQcg=ՙݭ-zQ'S;4㐮5eQL#C'f3%#IoP7<Oy:YZX3C,-w,>v_:hH	K::Fc    R       iD      J   >Mw,񑼳Kpg            xMN
Pu(h7kDnEF-"-$?}OW̜93 /7O	i]y	l͐;]N.^*!Ft ?rhjK&lN^8^YZɘLyKdJz@жhM)ntEq=)
mZVI    S      k         ?v̂.
އz6@            x}j0Ƴ<ٝ1tel좗eHqĶQc^{:9}~I˾W_žܭQR!^ :TEJe	,nnZZVj6@쩪R=ECVhoMq֎cQ1<|4]ma։,;ݟFdG.C\SLZ`UggL>EyuǗקd^ϛ_$/	*Q*ܠvQ&A߫}o=(\B    T     X  kf      Q   @M)EߏPc3            xc`He`Hf``(+16/Q+,M+Oր
h)$秦(`yg3LBSfI1auhr10 ҝ&    U       l      d   A{)l~7jX}            x]Q0F% ?< 30NCA4~n\ǤэR\uND2j
iP\KWA+HK\@ *ܦO
x,	tᗃ7Ǳ[!룹wV;;8?R\rLZZNKft[xQ؏|?wA[4O7lhC)!12cֿ^w}It    U       m]         B	hN)>Xsʝ            xc`:A93M#3$5 ăK"L=\5sRl,jj4Bj
ƚ


jj
i%
v
F:
J)y%
ye9)
)1yJ:5rjNq* (&    Vm     J  m]         CI!>DcvFn              e  e   >int  count_nonzero_c(const int16_t *quantCoeff, int numCoeff)
    V       m      	   DL<Iуv6$X            xc`e`:WZXW_W\Wbh_ uOMĒa\\891'L+b`Y
; Cl6a  Cl4VD*hARVHLITg #7    WF       l         EϚP>	Xqv؅            x}
0DW1*J/^ҴTm*?ȴ .,o(ZE"^r%!Sk#$+	Kr](mz}a8j{{4x)K/tyh1=7ة8-u׾	յ|UBkڈt0|t@'1NYZ>ݫ:7]Tm^z\    X       l         Ftm~)QI S            xc`HZ,QWbl_WXWRHOMQs@1XH)LLI0Js:4RҁxN( kNO./UUЀ霓Y`kldnf urRRs4 >8x    X     A  l         G(TV-B*	BV5            xc`Ha`He``S@ii
Z
%EU

Y

Eř)9`⒢5 [    X     S  l         H`gif%Ng(j            xc`Hse`HWWbl_WfhV$h %K2ii:
p~QjqfJibX(3%U     Y.       l[         IN6$$MS(
            xc`Hse`HQWbl__P_W24/(Eř)9`"⒢̔TM.9@37) Ah'gx
X[$klL쬹*@SjKYbC3\*TU U    Y       ld         Jȇc&
c            xc`Hd`HXPQWbl_PXWk)$秦(`yg`JjNIb(XK)LLI0JsFhr10$q
P ]_`5X9'XCBGD(䤖hZs ӯ=u    ZZ     Y  ld         K12n^Pf٥+La            xc`H_VY\Wbl_\✟P
*J-.ͅDҊSKt
y i\ ʲV    Z       mg      $   L`FH;7ƒ6ZmɁ,            xm
@|8B7M@[BߪŜa+c:^O)ضPURSư:c춰5CC*%oJ:Wps0{tHQ LpEh\>(iC>^5&Lc1)C|CM    [k     X  m      1   M%ۼZBMS1"j~ڱ            xc`c c 023wpu+LOMSPS06TU0QPJI-,M+Q $)($d祦)iZs /    [     ]  m      3   NM7LruB@              \  \   Q    X265_CHECK(((intptr_t)coef & 31) == 0, "dequant coef buffer not aligned\n");
    \      >  m      L   O׵?B'#IT?            xc`H 
@adfQYR`g`+d$)X)iZs +    \^     P  n6      N   P9*X bX            xc`HTg co 023wpu+uOMKSPU04TU0QP($霒̂T4<%Mk. s    \       n      !   QSq[ƽ_qf                         \    l  e      "   R8||hqbr!fG0}            xKo@ǧH Q0pJҤJC6!M+mCmjMԱS{S(ʉđq+W8 $p@z@Hkg`,
 \ڳ+sz[/:z73zJ¡+np'#MA抔#銐n|7z[ϋ\2C+ᐞJ:B	eju{{qFf"4XvQ,jB/(09yM\Ps@qH])i%s4Gp+yNU>il| HoJaCI%=UPR APPPPt/S*e*æ0qRQ80y@Q} ,} .1ozLTK&i&35KL"FЎdQ&uwEnJdvV15JL7^7m}"B@,hBf?̝VG{08M4a-@6X	C2Фf=`
94\;#q'5xQ祝cBw/^$Inv˚%r5<努.&X=:E\TWLVʔFtjW^r㺵#X-=0y)Fbqq 6=Q
_gW^ԯXKlj)1JrQ6j)LpxC{*U5G|\X򿲚ZT7f
mЮwǸpP3Bbu;P=X-h9' ˕ò˒z]N:o*b07+_x_d.fq2WW%:{e!1"^&b&|
%:&nm    `&       d      "   S<_9
JEW!ڸRz            xc`p:,?3E!%$>Y#3,DA(YGK).
J\}-⒢̔T-}M.1Ec X8 ^1ֵ	 0c&i>7.n/ܕ56"\wU .
 `^    `    ^  er      "   TISgP@Ԫ+?            xk@**aei,{vwRuCV]dBCQ'x/Ѓ|&֒3f^% 3W f8 8wg+-!K$~(k]i݀9d0yzNĞ9B*2%]A}Fm[^<xHG89Yhͥo%%^p8_	0~H}yv"zqaz}D?OO$oN$2T7sPztA ]C'3(R9iEF}:&)i2V(Xi8F5~4 jŠuL#V%6bod:SWQ[iB1Zz1]+g5VJcVB$5,oE{Ux9,|$Z&ELAS?A×m5P4"gq>ar?q)t!_SSȸ^|EE-,^],e2`N*;XP{H~f /hˉ(過4V tC^*e'̮m    c      n      "   UE6VcIm7M#|            xՖjAǧTD^K6	`YۤiZ)!.4JoN/G7Ə;}7ML$!]8;윙sAUBwǩOe,m'CajgIDbͲ׳i&5)M.Eodܤ44<z3|f7clߥ)얦*_$;#$e6r}L5"ZzT42g=,@7dkRwO܈&W.+Gݚ$cX}iUhτYy)J*ԑ}h$ϲժH
#ݭB; $)ӡ۴s|1;pZ'Z2)/0MYP4a~Yi0rONhx%ʘc(ƴ4Bcp0M5CaIAs"
` H+Y	,9hu!.>"."~00daPY('CUp2iQdʄd`adDMEB*2#"#'NVe؛o0JWGwl!Քtc?|Gi!6W.-mZPЁFmER\⚍{?_ٹcb6'{7dgSw }H~w[    e     6  n*      "   Vrg!"tom
               B  C   *    fastForwardDst(coef, dst, shift_2nd);
    f     l  ms      "   W0AeA6            xc`ශ!Q2RSSK4uSt32JK4R\C"gBRN~r6Ф
%@ !c    fp     <  l      "   X;"gVEW
8Ⱥ              D  Eg   0    partialButterfly4(coef, dst, shift_2nd, 4);
    f     <  l      "   YN KowzEb<($              FA  G   0    partialButterfly8(coef, dst, shift_2nd, 8);
    f     >  ki      "   ZDHu5QBQ]ϦS              H  H   2    partialButterfly16(coef, dst, shift_2nd, 16);
    g&     >  j      "   [~tPʏh*щߗk              I  J   2    partialButterfly32(coef, dst, shift_2nd, 32);
    gd     ~  j      "   \4gRae@V*            xc`P E%9N%%Ei9yeEũ&E:
i:
i%%:
&

nEE)
.!
N
n@?3WG!)'?9[!3bB~i	 s'C    g     C  iL      "   ]26; /h/              O;  P)   7    partialButterflyInverse8(src, coef, shift_1st, 8);
    h%     E  h      "   ^2⟌:7t0:az              Q  Q   9    partialButterflyInverse16(src, coef, shift_1st, 16);
    hj     E  g      "   _E)
lˣȁ              R  S   9    partialButterflyInverse32(src, coef, shift_1st, 32);
    h       h&      "   `XR5\1ܐ4            xo@ƏAY`BlR9mAdd(IU[2)&vA 1# Ċ+#H<> 'H~{;?v	Y}K}n1yn (wEa%V#-LSZ#=:t!ǎ.^.b,G5x}mRiZBl_3Fl~g9׾~a:B	"z3y	}݆PAV
ʻ:4KYAiCS֪*ZUAU߻PARn|'dii*S/yza,Eh@orsc\X
0m'ES#6ǒ;i?eΔ2~{3\4S9f4̀)++؎;OBVw4`_cd>;)㗑/c@;-慮r^ƣ^h2'Efi=±ezGlFuL~@T^o8$U    j      h      #7   a4Gp xP;c            xJ@G"9ijpX{PM(C(}>(6^<{vvڨnd6``	`rѲf4.[X.|j7f#B+lӘˉYPnөz5;huSX*apLVFTZPH/de|M+Aӄ|41M%CO)Q7jn ,,L^`~<7JʡQs?CY(GJAdՑ2E/ p^.eʻQZcK9YyN롅(Z@N!.|}hk -lÌ$#~5zfSO*ONqiW DL*⠌tk`#[1aJROc3Hz}tGTv'Y^<k7U    l       h      #k   bO+~nгTKg7            xc`Hc`Hf``Q 
[#>ٚ"\KI.$cUcQaC
C3*C3,*!e]ϩ0wds,*<̈́8%A+m292>9'4{qTu9\zC3LP?``l      m[     <  h      #   cT06W,:vHJ"{            xc`Hz,?3E89$(37$,8>Y5/9?%!P Ea#    m       iF      %   d)OsmP.{            xc`H8Z[XjWPRYjb+$U'k$( K
KJS4% .0H<  WV`BAʰM_	 z?B03h'gx
X='Cs5>
,0Uihب؈Vc#V n}C    n\    n  o      &=   epG^.@PU$t            x}Tn@KꯘJUdHD(D *A9f1+|VH5X9u5|iDI5(LdY28M]'YQ+^0^X1~O
(,@)aFҬpMp
)EQUAJVf>p $xAuʺ^7X[LtpkaY+ڢYY Dd3)[4=!F%<`Zy8e4]8%mdF 0C Đ5IHtXBnQyY2ŎYo@vFGuMñ29MCo$N@IҳoPpUU#^}Иp'8)$UP5(ve1_%!:8|`2FAn84)s1_C3`y4eI2p;*so\,j4r)T/ZyK䉑cM됖gcچ-QBOI瀩(⻪ӆFb²$<8Xв]4z+oϔc?8-?S    p    X  rz      '   f޽I_6\LS0            xSJ@xx¦mKZABZP%mel6 U_̧siR,g۬a<}z43*H8DzeQ	Lq	PqaX*I%$q'j =S'BChC_ 3Clp<@hCFKz^_&zl>!
'=!s)j}њp;'PZj>6ؼ2{鞇uǿaőPA*!]}4H""=bZtA5xߥYٱvnxm3G˿$c?3lq-xے0a;Xl?}M	`    r"       r      (   gаkɆhjyCrA>%            xc`Hd`H'3D891/ '$>Y#9?D(ah_Q&秦$U`<At\̯4WGdu^i.PxN-}&&Z0i}̪T-}M."5 CY
|`/k. N    r       s"      (   h(>Fp4G7+            x]
ASGqU&mjݙLj@By#:7t~13wNNS̫FC,5n2HT
E*Jhs,oRtꇣlG0D$$EzmNi6.ּAkolz01_-<F0^bF242(^	lA    s      |      )L   iyaNM(	            xVn6֟b8Ͱ@vڢ#fa
B9D,)Խ){PZ. };?1;
{Q%Hqt BNR4:6y'g\H"$3==0Ee2OgPL&|6$	gl9&(/WdyKCDPHXPiU*y+(u>w}8NniXdֆgi0|̮^.Ly2M[Pg6BM$^I2L!!2"MG+eJAiu7`rnH	uUn38ЅBXFCnTAMf5;l;wbvIՄ.mŲmz`Ks0PϼQAUwf\B%Z5Ѯj.4CFC>,3ޟgO/_]sx7nC$$LH@=+,>F˗{~XWWԡjTfv5uP@.pR>.OOTu<rDJrM1w/_$wуZ	"L("zK0Ez{&!hG:o#+`I,&iwӖ'+1cmZV(DQL*e@Y8/Xޫli7cV|1xm)f%> unVDS"\d= &lgB|E	r߼ԗZ}Oc+ē٫nJ٫wV_ˤkg姖Qovq^3(C4u[	kta9=[tyK:xf8
>iq:    w&     ;  |      )\   jϕ;PHW            xc``b`````,-KWKM-.HLNU023b`h"ij.     wa    k        )g   kK,}	GtS            x}UMo@qGbq$.AqKEꢈJ,$+5DGHN]ieyf{3㵢<}leAT:2%~Hpܪz^'
#!HN|>%Oh58Am\]@"vvKDWkdLi@>)c4X2lgdB~11.6f4π AA$}ʁ&Gy{b
ipZ$np_͓c؟4x=8/<̙41`wSÃ%	~ܧQYG	FSp.nH
D~A4M aľs׻KiNxr,E%L{0QWAԧE,;#h|GRm_;Թ_ryսݲ2`$(aV94튲l|]Q#Y1`mpتWqH9i{>T@/㟠+[*!_<lǂt{+Ji8I66W(xrx
oȢEk߸L\>|-#-iDkH$/R{d*˭/Xql    y            )l   l~ʻϼ\ѱ            x]PMK@s^h&hZ[Pa7t1@>J"G0{KZ5t``yaxcrg4b3R^IVcHk$VO"wR}YxDCOXESl.\xjO3CCM#vl)p۟CPqD(*&ҘTKR,dr-s{{w7`{p		B6Ѓeh?$yV-lGr    z    
  ^      )   m%+|oTݡFq=CR            xT]k0^+
-bVۥ!IjvmG[LJ^_z%I1&׽˲ϖUpɁA^n%qD<c]bqAxƁ z p[%Ƽ\ 4e8X%_iVĜb0\LT_6c$ca]G#S߮PmV¼Sj@t8OOiN5r`ܺz$)rƇ'tzy9UB8M-DFEb8C_DF4L'߸fH%HRhV	32^ğ
ۃ#|#46UIG
85y6hQ.JPbb9=V{bݿѾvD>Jʫ2GK!	&ߜ&.K6z
X~(n	2"e=l.Xޫ-.H?}#ʉ    |     M  a      )   nj,|ccFR            xc`(Mb`(]ࣀKJ3JKKKR2Kl"4RJ*aѹ`%
q
ř\     }>            )   oq!?Cv            xkA
=Jz=(Z&mZmmdw̦5UE"ԃWR'O^AAf_mQxa=3-B#/`wpSYZש"#qʰ{e\K<!5]^oeݖ̛T}LBj\eB)oT։a%Jj?ʳg4{AԀvObSe-Ήj04dlΣFB7z{x
s؀ Ɯe>$|N&8>ЙM:9z 低@l c~ ȔT(q1VUl/Q#KcD:=h<$
+W.Oƨ;P+J[<UmXB7|j
N)PVm\ٙɶZ3 KYӍ
֢hޙsmUq5p;BJ |+([ٕ@"92ݜ*1B^>!x<rXx`ݕКgPZRn:XQ<gYbjن!,ؐb:5ɰ,l4N1bW7UWU(!ܖsO	KI	1Z_pk̲;tE:G4ty}qo(?icsZ&m:pHDRzR@N#0y 1Pnހsu@ؓKem15$+P z;uW9_˷elzq0ksa{>UޗIb'G=S2daȶv!d[1RAqZu@iS&geJriκΆC
57I]My`g.؛|,)6J<         x        *f   pd):	[y(            xc`g`P Ffɉ9
6
Ff
55
P!5cM[[55̴;N׀]MMļ̼ĜvՔ<%GӚ <o"    =             +   q_bQ[bV&Ge            xMOK@kB/@JTx*Rf3mnv/6}ySJ?*0ie{"lmQAz7Ʊφ=N$9#Z{CTVB+0V{m{c;Xgh8+Q~y][3CaZl8gpl΁=X/AR]4*9g:N28 92W        :  G      +8   r}n3E},߅]hW            x}QJ0: Rq0J3D7tk.M>I؂Is˪`ݴۘL@J3i$/)GH5Ȳp$冰G1\H0-mY#v# $Lbc2ZD2}D!Y֦nf5j$Mus+{uX.՟K_\'|ʗNW6$P;ڌ^TP,[VN'Pao^%jLG&UPUSSQ?7ܞǙ